Funkcja zwracająca wartości z klasy

0

Co należy poprawić aby poniższy program wyświetlał wartości "zmienna" oraz x ?

#include <iostream>
using namespace std;

class Klasa{
int x = 5; 
public:
static bool zmienna;
friend void getX(Klasa &)
{ ...
}
};
bool Klasa::zmienna=true;
int main()
{
Klasa k;
cout << Klasa::zmienna << " " <<k.getX()<< endl;
} 
0

No ale tam nie masz funkcji funkcja.

0

oczywiście chodziło o wartości x oraz wartości "funkcja" (był błąd który już jest poprawiony)

1
friend int getX(const Klasa& k)
{
    return k.x;
}
...
cout << Klasa::zmienna << " " << getX(k)<< endl;
0

Mam jeszcze problem z dość podobnym zadaniem, dlatego nie zakładam nowego tematu. Problem polega na tym że przy uruchomieniu wyświetlają się złe wartości. Również proszę o pomoc.

#include <iostream>
using namespace std;
class licze
{
public:
int pojedynczo;
static int razem;
void powieksz()
{
this->razem += 1;
this->pojedynczo += 1;
}
};
int licze::razem = 0;
int main()
{
licze jeden;
licze dwa;
licze trzy;
jeden.powieksz();
jeden.powieksz();
dwa.powieksz();
trzy.powieksz();
dwa.powieksz();
jeden.powieksz();
cout << "razem wykonano " << jeden.razem
<< " wynosi" << jeden.pojedynczo
<< " wynosi " << dwa.pojedynczo
<< " wynosi " << trzy.pojedynczo << endl;
}
1

Nie zerujesz zmiennej składowej w swojej klasie. Dodaj np. taki konstruktor z listą inicjalizacyjną:

licze()
    : pojedynczo(0)
{

}

1 użytkowników online, w tym zalogowanych: 0, gości: 1