Skocz do zawartości
BRUNO_A_S

[c++] Kolejność Wczytywania Klas

Rekomendowane odpowiedzi

Witam Was Forumowicze

 

Zwracam się do Was z prośbą o pomoc. W C++ (w pliku a.h) mam zadeklarowane 2 klasy w następującej postaci ( i kolejności !!!):

//>>>-------(a.h)---------->class ones{	public:	int ones_x;	int ones_y;  twos twod;};class twos{	public:	int twos_x;	int twos_y;};//<---------(a.h)--------<<<

Próba kompilacji zakonczy się fiaskem - co jest oczywiste -

ERRORS:

error C2146: syntax error : missing ';' before identifier 'twod'

error C2501: 'twos' : missing storage-class or type specifiers

error C2501: 'twod' : missing storage-class or type specifiers

 

 

Co nalezy zrobić aby kompilator wiedzial, że deklaracja klasy 'twos' jest w dalszej części kodu??

 

Ps Zmiana kolejności deklaracji klas nie wchodzi w rachubę !!!

 

Z góry dzięki za pomoc.

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Qrde nom ciekawy problem !

Jeżeli damy: wskaźnik tylko do klasy to kompiluje bez probelmu [ więc jakoś obejśc sie da ]

class ones{ public:int ones_x;int ones_y; twos *twod;};class twos{ public:int twos_x;int twos_y;};
Wydaje mi się że po prostu kompilator nie zna jeszcze rozmiaru klasy twos i dlatego wywala bład ... hymm tylko jak to zwalczyć, ciekawe ciekawe ... będe szukał :wink:

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Qrde nom ciekawy problem !

Jeżeli damy: wskaźnik tylko do klasy to kompiluje bez probelmu [ więc jakoś obejśc sie da ]

 

Wydaje mi się że po prostu kompilator nie zna jeszcze rozmiaru klasy twos i dlatego wywala bład ... hymm tylko jak to zwalczyć, ciekawe ciekawe ... będe szukał

Pouczcie się jeszcze C++ lepiej. Czym się różnic deklaracja od definicji, i co można zrobić z niekompletnym typem, a czego nie.

 

http://forum.4programmers.net/viewtopic.php?id=73942

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Dołącz do dyskusji

Możesz dodać zawartość już teraz a zarejestrować się później. Jeśli posiadasz już konto, zaloguj się aby dodać zawartość za jego pomocą.

Gość
Dodaj odpowiedź do tematu...

×   Wklejono zawartość z formatowaniem.   Przywróć formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Odnośnik został automatycznie osadzony.   Przywróć wyświetlanie jako odnośnik

×   Przywrócono poprzednią zawartość.   Wyczyść edytor

×   Nie możesz bezpośrednio wkleić grafiki. Dodaj lub załącz grafiki z adresu URL.

Ładowanie


×
×
  • Dodaj nową pozycję...