Ich möchte eine Neuzuweisung in einem Strukt auf ein anderes Strukt einer anderen Klasse vornehmen. Leider funktioniert das über new nicht.
Ich wollte das so machen:
Wo liegt mein Denkfehler?
Wenn ich die Deklaration so (also ohne den Zeiger Klasse) in der Klasse CKlasseView mache klappt es. Ich habe leider ohne Erfolg auch schon ausprobiert, in CKlasse2 ebenfalls Struct2 zu definieren, was allerdings mit
"CKlasse2::Struct2 * kann nicht in CKlasseView::Struct2 * konvertiert werden" 'belohnt 'wird.
Ich wollte das so machen:
Code:
// in CKlasseView.h
struct Struct2 {
int* test;
};
struct Struct1 {
int* tata;
Struct2* Var;
};
Struct1 m_Struct1;
/////////////////////////////////////////////////////////
// in CKlasse2.cpp
CKlasseView* Klasse= (CKlasseView*)m_handle;
Klasse->m_Struct.tata = new int[12];
Klasse->m_Struct1.Var = new Klasse->Struct2[12]; // funktioniert nicht :(
for (int z=1; z<=12; z++)
Klasse->m_Struct1.Var[z] = new int[4];
Wo liegt mein Denkfehler?
Wenn ich die Deklaration so (also ohne den Zeiger Klasse) in der Klasse CKlasseView mache klappt es. Ich habe leider ohne Erfolg auch schon ausprobiert, in CKlasse2 ebenfalls Struct2 zu definieren, was allerdings mit
"CKlasse2::Struct2 * kann nicht in CKlasseView::Struct2 * konvertiert werden" 'belohnt 'wird.