Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (GNU/Linux, *NIX, *BSD und Co) » in Memberklasse pointer auf Oberklasse?

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
03.02.2015, 14:37 Uhr
ramiro



Hallo allerseits!

Ich habe folgendes Problem:

Ich habe eine Klasse 'CGame', welche u.a einen Member besitzt vom Typ 'CCharacter'. Aus dieser Klasse möchte ich auf ein anderes Attribut von CGame zugreifen. Mein Plan ist, über den Konstruktor , der Instanz von MainCharacter einen Pointer auf CGame zu geben. Versuche ich einen Pointer zu deklarieren (CGame *p), bekomme ich die Fehlermeldung "unknown type". Der Versuch, analog dazu, einen Pointer auf die Klasse 'CTriangle' zu deklarieren (Ist ebenfalls Member von CGame), funktioniert....Wo ist mein Denkfehler? Ich vermute mal, dass geht so einfach nicht.....Aber wie erhalte ich dann Zugriff auf einen Member der "Oberklasse".


Also das schaut so aus:

class CGame
{

CCharacter Character;

CTriangle tri;
....

}

class CCharacter
{
CGame *p; ////Fehlermeldung

CTriangle *p //// Deklaration würde würde funktionieren
}
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
03.02.2015, 17:29 Uhr
Tommix



Hallo,
Du benötigst für CCharacter eine Vorwärtsdeklaration:

C++:
class CGame;

class CCharacter
{
  ...


Allerdings deuten solche wechselseitige Abhängigkeiten häufig auf einen Designfehler.

Gruß,
Tommix
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
03.02.2015, 19:43 Uhr
ramiro



Thx! Hätte funktioniert, Betonung liegt auf hätte, weil ich es letztendlich anders gelöst habe. Besser wie ich meine und dass spricht wohl für den Designfehler!
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ C / C++ (GNU/Linux, *NIX, *BSD und Co) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: