Wenn ich std :: vector <> oder std :: string verwende, muss ich sie auch in Heap zuordnen. Beispiel:Sollen wir Speicher für ein Objekt auf Heap reservieren, wenn sein interner Speicher bereits in Heap zugeordnet ist?
In Java und C# werden Objekte immer im Heap mit dieser Syntax zugewiesen. Ich frage mich, ob es effizient ist, in C++ dasselbe zu tun? Denn wenn ich eine Klasse in C++ erzeuge, mische ich normalerweise zwischen Stack- und Heap-Variablen. Lassen Sie uns sagen:
Ich frage mich, was ist die beste Praxis sollte ich folgen, wenn Objekt in C++ verwenden?
- Alle Daten sollten auf Heap zugeordnet werden?
- Alle Daten könnten gemischt werden?
- oder ...
Danke,
Chan
Tatsächlich befinden sich Objekte nicht unbedingt auf dem Heap, der diese Syntax in C# verwendet. Wenn es ein Werttyp ist, wird es auf den Stapel gelegt. –