Forum: PC-Programmierung Array Initialisierung mit def. Konstruktor


von Neuling (Gast)


Lesenswert?

Hallo ich habe ein kleines Programm in C++ bzw Qt geschrieben.

ich will in meiner test.h Datei ein "Array"bzw pointer of C_Menue 
vordefinieren
1
C_Menue *m_pcLabelMenue;

in meiner test.cpp datei will ich nun dieses Array anlegen und damit 
arbeiten
1
m_pcLabelMenue = new C_Menue[m_menue_anzahl];

so normal auch kein Problem. Nur soll C_Menue keinen Standartkonstruktor 
benutzen sondern einen mit Parametern.
1
C_Menue::C_Menue(C_Test* test)
2
:m_pctest(test)
3
{
4
}

also hab ich verschiedene Varianten bei test.cpp versucht.
1
m_pcLabelMenue = new C_Menue(this)[m_menue_anzahl];//fehler
2
m_pcLabelMenue = new C_Menue[m_menue_anzahl](this);//fehler

habe einige schlaue bücher gewälzt und im Internet mal gegoogelt. Jedoch 
verwenden alle den Standartkonstruktor. Ist es überhaupt möglich und ich 
versuche hier etwas unmögliches? Vielleicht weiß jmd auch eine 
elegantere Lösung.
Bin für jeden Tip dankbar.

lg

von Robert L. (lrlr)


Lesenswert?

also mein google sagt dass es nicht geht

http://cplus.about.com/od/learning1/ss/constructors_3.htm

edit: und IMHO steht dort auch eine "elegante?" Lösung

(ich hab keine Ahnung von C# also mir bitte keine Fragen stellen ;-))

von JojoS (Gast)


Lesenswert?

und warum nutzt du C_Menu nicht als Klasse und machst ein richtiges Menu 
Objekt daraus? Die Menu Einträge kann man dann schön mit 
menu.AddItem(child, ...); hinzufügen.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.