Bin ich jetzt echt zu blöd?
-
Hoi, ich bin mir nicht mehr ganz darüber im klaren, ob ich bei einem lokalen Array von Objekten gleich die Werte mit den Konstruktoren initialisieren darf.
Hier die Funktionsdefinition.Hier der Code:
void Graphics::drawFrame() { if (!Interface::showFrame) return; D3DXVECTOR2 temp[5] = { D3DXVECTOR2((FLOAT)Interface::frameX, (FLOAT)Interface::frameX), D3DXVECTOR2((FLOAT)Interface::mousePos.x, (FLOAT)Interface::frameY), D3DXVECTOR2((FLOAT)Interface::frameX, (FLOAT)Interface::frameY), D3DXVECTOR2((FLOAT)Interface::frameX, (FLOAT)Interface::mousePos.y), D3DXVECTOR2((FLOAT)Interface::frameX, (FLOAT)Interface::frameY) }; lpLine->Draw(temp, 5, 0xFFFFFFFF); }
Sorry, für diese echt dumme Frage, aber ich steh irgendwie grad total auf dem Schlauch und hab nur 4 Stunden geschlafen.
Die Funktion lpLine->Draw() wirft eine Exception (Fehler beim Lesen 0x00000000), aber wenn ich im Debugger mir das temp anschaue, hat das eine gültige Adresse und die Arrayelemente sind brav initialisiert.
-
Optimizer schrieb:
Hoi, ich bin mir nicht mehr ganz darüber im klaren, ob ich bei einem lokalen Array von Objekten gleich die Werte mit den Konstruktoren initialisieren darf.
(Wüsste im Moment keinen Grund dagegen)
Aber: Warum nicht einfach ausprobieren?Wenn D3D2DVECTOR2(wieauchimmmer) dir diesen Ctor anbietet, dann sollte alles klappen.
-
Also C++ technisch ist das ok? Dann muss ich annehmen, dass diese DX-Funktion fehlerhaft ist.
Aber danke mal für die Bestätigung, dass ich jetzt doch nicht ganz blöd bin.
-
*lol* hat sich erledigt, das Line Interface wird nicht anständig initialisiert und der Pointer auf das Line Interface ist NULL.
Gut, dass die Initialisierung mit Rückgabewerten statt Exceptions arbeitet, das ist Fehlerbehandlung allererster Güte.
-
Optimizer schrieb:
*lol* hat sich erledigt, das Line Interface wird nicht anständig initialisiert und der Pointer auf das Line Interface ist NULL.
Gut, dass die Initialisierung mit Rückgabewerten statt Exceptions arbeitet, das ist Fehlerbehandlung allererster Güte.Tja, ist man als frischgebackener Java-Anhänger nicht mehr gewohnt, dass für jeden Mist eine Exception geworfen wird, oder
?