Registriert: Do Sep 25, 2003 15:56 Beiträge: 7810 Wohnort: Sachsen - ERZ / C
Programmiersprache: Java (, Pascal)
Mein Pascal ist jetzt schon sehr eingerostet, aber was soll der Code machen? Du übergibst "Variablen" und weißt die dann zu bzw. überschreibst die? Das nennt man Seiteneffekte, wenn Funktionen Variablen ändern die ihnen nicht gehören. Also zeig mal deinen echten Code und nicht nur deinen "ungefähren Code".
_________________ Blog: kevin-fleischer.de und fbaingermany.com
aber bei Einzelschritt überspringt er diese einfach!
Der Compiler optimiert unter gewissen Umständen den Code. In diesem Fall hat er deinen Konstruktor als sinnlos/funktionslos erkannt und weg optimiert. Du solltest versuchen herauszufinden warum der Code sinnlos ist! Z.B. könnte es sein das der entsprechende Speicherbereich niemals gelesen wird oder der Speicher später erneut überschrieben wird.
"AccessViolation" klingt nach einem Zugriff auf einen Speicherbereich der nicht deiner Anwendung gehört. Dies kann vor allem durch nicht bzw. falsch initialisierte Werte passieren.
Zitat:
Darum krieg ich ne EAccVio. wenn ich sie im Render aufrufe:
Warum zeigst du uns dann deinen Konstruktor und nicht die Stelle an der die AccessViolation auftritt. Der Fehler liegt wahrscheinlich bei der Initialisierung dessen was später "im Render" aufgerufen wird.
Registriert: Do Sep 02, 2004 19:42 Beiträge: 4158
Programmiersprache: FreePascal, C++
Der Aufruf und die Deklaration des Konstruktors würden mich auch noch interessieren.
greetings
_________________ If you find any deadlinks, please send me a notification – Wenn du tote Links findest, sende mir eine Benachrichtigung. current projects: ManiacLab; aioxmpp zombofant network • my photostream „Writing code is like writing poetry“ - source unknown
„Give a man a fish, and you feed him for a day. Teach a man to fish and you feed him for a lifetime. “ ~ A Chinese Proverb
Ist der Konstruktor in der Basisklasse als virtual deklariert, und dann mit override überschrieben? Bei mir ist´s auch mal passiert, dass er den Konstruktor nicht ausgeführt hat, weil er stattdessen gleich den geerbten genommen hat, und gelöst hab ich´s dann eben mit virtual und override. (sollte aber soweit ich weiß nicht passieren bzw ist nicht so beabsichtigt )
Registriert: Do Sep 02, 2004 19:42 Beiträge: 4158
Programmiersprache: FreePascal, C++
Hm, das sollte kein problem sein, da er den geerbten mit inherited Create aufruft. Und in die andere Richtung darf das nur passieren, wenn er Klassentypenvariablen verwendet oder gleich TGLObject.Create aufruft, wobei letzteres definitiv falsch wäre .
greetings
_________________ If you find any deadlinks, please send me a notification – Wenn du tote Links findest, sende mir eine Benachrichtigung. current projects: ManiacLab; aioxmpp zombofant network • my photostream „Writing code is like writing poetry“ - source unknown
„Give a man a fish, and you feed him for a day. Teach a man to fish and you feed him for a lifetime. “ ~ A Chinese Proverb
Mitglieder in diesem Forum: Majestic-12 [Bot] und 16 Gäste
Du darfst keine neuen Themen in diesem Forum erstellen. Du darfst keine Antworten zu Themen in diesem Forum erstellen. Du darfst deine Beiträge in diesem Forum nicht ändern. Du darfst deine Beiträge in diesem Forum nicht löschen. Du darfst keine Dateianhänge in diesem Forum erstellen.