Problem mit new()



  • Hallo Leute,
    ich habe ein Problem mit dem new-Befehl.
    Ich lege ein Objekt mit new an und bekomme die Fehlermeldung,
    dass ein Haltepunkt ausgelöst wurde (xmemory, Zeile 36).
    Ich habe auch nach längeren Suchen keine Lösung oder Ursache für
    dieses Problem gefunden.
    Es wäre echt super, wenn jemand eine Idee hätte, woran das liegen könnte.

    Mfg Xaggre



  • Du machst was falsch!

    (Wenn dir die Antwort jetzt ein wenig allgemein vorkommt, solltest du vielleicht noch mal deine Fragestellung betrachten)



  • Na gut, das seh ich ein.

    also ich lege hier ein neues Objekt an:

    MERadioButton *mrb = new MERadioButton(g->m_me, Vector2d(400,150), Vector2d(700,180), L"Test-RadioButton 1", 1, false);
    

    Ich hab einen Haltepunkt nach dieser Zeile gesetzt, der nicht mehr erreicht wird.

    und hier ist der Konstruktor:

    MERadioButton::MERadioButton(CME* _me, Vector2d _ulC, Vector2d _drC, wstring _wszCaption, WORD _wGroup, bool _bActive)
    {
    	InitializeCriticalSection(&m_cs);
    	BaseInit();
    	m_me = _me;
    	m_bShow = true;
    	m_bDownBef = true;
    	m_wGroup = _wGroup;
    	m_wszCaption = _wszCaption;
    	m_ulCorner = _ulC;
    	m_drCorner = _drC;
    	SetRect(&m_rcTextPos, (WORD)m_ulCorner.x + (WORD)m_drCorner.y - (WORD)m_ulCorner.y + 2, (WORD)m_ulCorner.y,
    		(WORD)m_drCorner.x, (WORD)m_drCorner.y);
    
    	Load();
    
    	m_bActive = _bActive;
    }
    


  • und wo knallt es im Konstruktor?



  • Er kommt nicht bis in den Konstruktor, der Haltepunkt wird vorher ausgelöst.



  • eben hast du noch gesagt, der Haltepunkt wird nicht erreicht.



  • Nein also es kommt vorher die Fehlermeldung, dass Windows einen Haltepunkt in der Anwendung ausgelöst hat (in besagtem xmemory-Header)



  • Dann würde ich mir den Callstack anschauen...



  • Ist dein Haltepunkt im Konstruktor?



  • Ja, in der ersten Zeile.


  • Mod

    Dann konnte ein Member deiner Klasse nicht erstellt werden.

    Guck bitte mal dringend den dritten Link in meiner Signatur an, damit man dir nicht weiter jede Kleinigkeit aus der Nase ziehen muss.


Log in to reply