in einer anderen Datei auf struct zugreifen
-
Ich habe in einer Datei einen Struct definiert. Auf dessen Eigenschaften möchte ich in einer anderen cpp Datei zugreifen. Wie könnte ich dieses tun. Mein Vorschlag war folgender gewesen:
if (Algorithmus::Raum=pDoc->m_raum) { for (i=0;i<30;i++) { vername[i]=Algorithmus::Raum.Veranst[i]; prof[i]=Algorithmus::Raum.Vorlesender[i]; }}Dabei kommt die folgende Fehlermeldung:
error C2597: illegal reference to non-static member 'Algorithmus::Raum'
error C2228: left of '.Veranst' must have class/struct/union type
error C2228: left of '.Vorlesender' must have class/struct/union typeWer kann mir helfen????
-
Algorithmus::Raum ist ein Typ und kein Objekt. Daher vergleichst du ( im Moment ist es eine Zuweisung ) in der if Anweisund einen Typ mit einem Objekt. Das funktioniert nicht

Wenn du in Datei a.cpp eine Struktur definiert hast:
// Header-Datei mit der Deklaration von Raum ( a.h ) struct Raum { string Veranst; string Vorlesender; }; // Datei a.cpp #include <a.h> Raum m_Raeume[20];Dann kannst du in Datei b.cpp wie folgt darauf zugreifen
// Datei b.cpp #include <a.h> extern Raum m_Raeume[]; for( i=0; i<20; i++ ) { string vername = m_Raeume[i].Veranst; string prof = m_Raeume[i].Vorlesender; }
In der FAQ sind jede Menge Kurse und Dokumente drin. lese doch einfach mal nach wie structs funktionieren.
-
tvdog schrieb:
Algorithmus::Raum ist ein Typ und kein Objekt.
Woher willst du das wissen?
Könnte auch eine statische Member-Variable sein.