Wie deklariere ich eine Struktur innerhalb einer Klasse?

7

Ich möchte eine Struktur innerhalb einer Klasse deklarieren, die privat ist, und ich möchte einer Variable in derselben Struktur einen Zeichenwert geben, aber ich kann es nicht initialisieren oder cin es:

%Vor%     
haddad 22.10.2009, 19:30
quelle

4 Antworten

20

Sie haben einen Typ namens "p" beschrieben, der eine Struktur ist. Es gibt noch nichts vom Typ p herum. Deshalb dein

%Vor%

Anrufe machen keinen Sinn.

Versuchen Sie,

zu deklarieren %Vor%

in Ihrer Klasse und verwenden Sie es, dh:

%Vor%

Beachten Sie, dass Ihre Zuweisung zu name [25] fehlschlägt, da die erlaubten Indizes für dieses Array 0 bis 24 sind (insgesamt 25 Elemente).

    
Doug T. 22.10.2009 19:17
quelle
13

Sie haben hier zwei ernsthafte Probleme

%Vor%

Dies definiert einen struct -Typ mit dem Namen p. Ich denke, was du machen wolltest war

%Vor%

Dies deklariert eine struct , namens p, mit den Variablen name und grade member.

Ihr zweites ernstes Problem ist, dass Sie Folgendes zuweisen:

%Vor%

Dies weist 'g' dem 26. Element des Array-Namens zu. (Arrays sind 0-indiziert)

    
jkerian 02.11.2009 23:56
quelle
6

ist es nicht

%Vor%

nicht

%Vor%

?

    
THX-1138 22.10.2009 19:17
quelle
3

Platzieren Sie die Strukturdefinition außerhalb der Klasse mit typedef. Wenn die Struktur in Ihrer CPP-Datei definiert ist, ist sie außerhalb Ihrer Klasse nicht sichtbar.

%Vor%     
Will Bickford 22.10.2009 19:20
quelle

Tags und Links