Was manche so zwischen zeilen lesen ....
Ich bin mit Sicherheit kein verfechter von rohen zeigern in c++.
BTW sind Smartpointer auch zeiger, mit nur etwas mehr funktionalitaet.
Sorry wenn ich Zeiger generell verwende ... ich meint damit allgemeine dyn. allokierung.
Und hier auf die boost::pointer verweissen ? Warum ? Der TE warbeit mit Q-COntainern. Soll er doch auch Q-Pointer verwenden, wenn notwendig.
Und grad fuer sein anliegen im spezialfall Qt isses ueberhaupt nicht notwendig. Grad auf diese naive Verwendung der container zielt doch das verdeckte optimieren der qt !
Außerdem ist der Stack schneller als der Heap.
was in diesem falle aber irrelevant iss.
Listen legen ihre nodes immer dyn. an ... und verwenden dafuer nur ihren eigenen allokator. um das (impliziete) new kommst also ned drumherum .
Das einzigste was man verschenkt, wenn man selber allokiert, iss die optimierungsmoeglichkeit des allokierens der daten in den container der eingefuegt wird. Das ist wahrscheinlich schon recht heftig.
Aber auch da kann man selber allokatoren verwenden um das abzuschwaechen.
Aber so ins detail gehen darum gehts gar ned.
Fakt ist, er macht 2 tiefe kopien seiner daten im einzufuegenden container.
Und nur wegen einem _möglichen_ Perfomancegewinn nur noch Pointer in Container zu legen ist auch nicht das Wahre
nein natuerlich nicht, nur als c++ programmierer sollt man sich der ganzen thematik bewusst sein ... man sollt also wissen was man da tut. und vor allem sollt man wissen was qbytearray da tut, sonst koennt man leicht beim manuellen (und vielleicht unnoetigen) nachoptimieren kraeftig auf die nase fallen.
Ciao ...