shared_ptr problemchen
-
gruss,
ohne shared_ptr lief es vorher
myClass *test = new myClass(20,4);
jetzt mach ich das mit shared_ptr und folgendes problem tritt auf:
shared_ptr<myClass> test; test.reset( new myClass(20,3)); // beim Ausführen des Programmes speicherfehlermeldung // dies wiederrum läuft problemlos test.reset( new myClass()); // Standard konstruktor mit standard werten
wieso geht das plötzlich nicht mehr mit meinem überladenen konstruktor?
-
<spekulier>
Fehler im Destruktor? Klappt denn anfangs das delete (hattest du nicht mit gezeigt, also vielleicht auch nicht gemacht)?
</spekulier>
-
ich habe jetzt nen frei erfundenes beispiel gemacht in meiner konstraktor gabe ich auch sowas
class AAA { AAA(); AAA(char *name = "text"); ~AAA(); };
kann das an *name = "text" liegen?
ich möchte die variable vordefinieren. aber normal klappte es ja.
-
Kann man ohne die Implementierung zu kennen nicht sagen.
-
Wenn Bashar sich nicht drüber beschwert scheint es ja Sinn zu machen, aber ich versteh's nicht ganz:
AAA(); AAA(char *name = "text");
Das Vorlagenargumen btingt doch herzlich wenig
-
Helium schrieb:
Wenn Bashar sich nicht drüber beschwert scheint es ja Sinn zu machen
Nö, muss keinen Sinn machen.
-
"Das Vorlagenargumen btingt doch herzlich wenig"
wie meinst das?
im übrigen lag der fehler tiefer im code. mal bissle debug gemacht
-
wie meinst das?
AAA foo ("Hallo"); // hier wird's nicht verwendet; AAA foo; // hier gibt's 'nen Fehler, weil es eine Mehrdeutigkeit gibt
Du hast auch noch einen parameterlosen Konstruktor gebaut!