2 Stimmen

C++ Problem bei der doppelten Initialisierung eines Objekts

Ich bin relativ neu in C++ und habe Schwierigkeiten, die Instanziierung von Objekten und Zeigern auf Objekte zu verstehen.

Worin besteht der Unterschied zwischen diesen beiden Erklärungen in Bezug auf den Speicher und die Nutzung? :

MyClass obj1;
MyClass *obj2;

Und auch das spezifische Problem, das ich habe ist, dass ich eine Klasse, die ein unsigned short Array hat, wo der letzte Raum des Arrays ändert, wenn ich dies tun:

MyClass obj;
obj = MyClass("123");

MyClass hat zwei Konstruktoren, einen, der einen int nimmt und ihn standardmäßig auf Null setzt und ihn in Teile von 3 Ziffern oder weniger aufteilt. Und einen weiteren, der eine String-Repräsentation einer Zahl nimmt und dasselbe tut... ich hoffe, das macht Sinn!

Es funktioniert gut, wenn ich es deklariere

MyClass obj = MyClass("123123123");

aber nicht, wenn ich es andersherum mache. Warum?

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X