Stack overflow
-
Hallo,
ich habe den Konstruktor einer Form folgendermaßen verändert:
[cpp]
__fastcall TfrmNewParam::TfrmNewParam(TComponent* Owner, int iSPId) : TForm(Owner)
{
iTPId = iSPId;
}[/cpp]Wenn ich die Form nun von einem anderen Formular aus mit
frmNewParam = new TfrmNewParam(this, iTPId);
aufrufe erhalte ich einen StackOverflow. Was mach ich falsch?
Der Aufbau der Anwendung ist folgender:
Mainform (fsMDIForm) zeigt eine Parameteransicht (fsMDIChild) in der ein Parametereingabedialog (frmNewParam) aufgerufen wird (fsNormal). Kann es etwas mit den MDI-Forms zu tun haben? Im Debugger wird nämlich solange der Konstruktor des Parameterdialogs aufgerufen bis der Stack voll ist (Endlosschleife)
[ Dieser Beitrag wurde am 25.02.2003 um 09:09 Uhr von F98 editiert. ]
-
*push*
-
Bitte nicht drängeln!
Üblich ist ein "Push" im Abstand von einem Tag, ansonsten bekommt so ein Thread nämlich schnell mal eine vorübergehende Schliessung verpasst.
PS. Das war nur zur Information, um Kommentare wird ausdrücklich nicht gebeten.
-
in der hilfe zum TForm Konstruktor hab ich das gefunden
__fastcall TForm(Classes::TComponent* AOwner, int Dummy) : Forms::TCustomForm(AOwner, Dummy) { }
ich hatte mal das gleiche problem setz einfach den integer for
TComponent* Owner
. dann gings bei mir.
-
Vielen Dank an M+A+T+T für den Tipp (es war dringend)!!