Pole klasy będące obiektem innej klasy

0
class u
{
    string nazwa;
    innaklasa obiekt(100);

public:
        void pokaz() {cout << obiekt.liczba <<endl;}
};

Witam, jak zadeklarować obiekt jakieś innej klasy w klasie ? Próbowałem tak jak wyżej ale nie działa. Da się jakoś bez wskaźnika ?

1
class u
{
    string nazwa;
    innaklasa obiekt;
 
public:
        u():obiekt(1000){}
        void pokaz() {cout << obiekt.liczba <<endl;}
};

Pytanie jest głupie bo przecież string to też klasa...

0

A jak ma wyglądać konstruktor tej innejklasy żeby działało ? Bo tak wywala błąd:
class innaklasa
{
string nazwa;
public:
int liczba;

innaklasa(int liczba)
{ this->liczba = liczba;
}
};

0

Niby jaki błąd?
Może brakuje Ci tego:

#include <string>

using namespace std;
0

error: no matching function for call to 'innaklasa::innaklasa()'|

0

Pokaż cały kod który próbujesz skompilować.

0

Zadeklarowałeś konstruktor z parametrem innaklasa(int), a próbujesz wywołać domyślny innaklasa().

0

ok dzięki, działa. Miałem inny głupi błąd przez który nie chciało się skompilować.

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