 |
C++Talk.NET C++ language newsgroups
|
| View previous topic :: View next topic |
| Author |
Message |
Michael Gebhart Guest
|
Posted: Thu Dec 16, 2004 1:41 pm Post subject: Vector in Multithread-Anwendung lieber mit Pointern füllen? |
|
|
Hi zusammen,
ich habe eine Anwendung mit mehreren Threads. Außerdem benutze ich in dieser
Anwendung einen Vektor.
In diesem Vektor sollen Objekte einer Klasse gespeichert werden.
Es gibt ja nun die Möglichkeit, entweder das Objekt selbst, oder nur einen
Pointer im Vektor zu speichern. Was ist besser? Also:
MyClass *myPointer = new MyClass();
myvector.push_back(myPointer);
MyClass myObject = MyClass();
oder myvector.push_back(myObject);
Was ist besser? Oder geht beides?
Gruß
Michael
--
de.comp.lang.iso-c++ - Moderation: mailto:voyager+mod (AT) bud (DOT) prima.de
FAQ: http://www.voyager.prima.de/cpp/ mailto:voyager+send-faq (AT) bud (DOT) prima.de
|
|
| Back to top |
|
 |
kanze@gabi-soft.fr Guest
|
Posted: Fri Dec 17, 2004 4:16 pm Post subject: Re: Vector in Multithread-Anwendung lieber mit Pointern füll |
|
|
Michael Gebhart wrote:
| Quote: | ich habe eine Anwendung mit mehreren Threads. Außerdem benutze
ich in dieser Anwendung einen Vektor.
In diesem Vektor sollen Objekte einer Klasse gespeichert werden.
Es gibt ja nun die Möglichkeit, entweder das Objekt selbst,
oder nur einen Pointer im Vektor zu speichern. Was ist besser?
Also:
MyClass *myPointer = new MyClass();
myvector.push_back(myPointer);
MyClass myObject = MyClass();
oder myvector.push_back(myObject);
Was ist besser? Oder geht beides?
|
Es kommt darauf an. Beide gehen, wenn die Klasse strenge
Wert-Semantik hat. In Allegeime ist meine Regel, die Klasse
selbe, wenn es geht, und Zeiger, wenn nicht.
Du sollst auch nicht die Möglichkeit von Smart-Pointer
vergessen.
--
James Kanze GABI Software http://www.gabi-soft.fr
Conseils en informatique orientée objet/
Beratung in objektorientierter Datenverarbeitung
9 place Sémard, 78210 St.-Cyr-l'École, France, +33 (0)1 30 23 00 34
--
de.comp.lang.iso-c++ - Moderation: mailto:voyager+mod (AT) bud (DOT) prima.de
FAQ: http://www.voyager.prima.de/cpp/ mailto:voyager+send-faq (AT) bud (DOT) prima.de
|
|
| Back to top |
|
 |
Stefan Reuther Guest
|
Posted: Fri Dec 17, 2004 8:16 pm Post subject: Re: Vector in Multithread-Anwendung lieber mit Pointern füll |
|
|
Michael Gebhart wrote:
| Quote: | ich habe eine Anwendung mit mehreren Threads. Außerdem benutze ich in dieser
Anwendung einen Vektor.
In diesem Vektor sollen Objekte einer Klasse gespeichert werden.
Es gibt ja nun die Möglichkeit, entweder das Objekt selbst, oder nur einen
Pointer im Vektor zu speichern. Was ist besser?
|
In Punkto Thread-Sicherheit sehe ich keine relevanten Unterschiede
zwischen den beiden Versionen.
Stefan
--
de.comp.lang.iso-c++ - Moderation: mailto:voyager+mod (AT) bud (DOT) prima.de
FAQ: http://www.voyager.prima.de/cpp/ mailto:voyager+send-faq (AT) bud (DOT) prima.de
|
|
| Back to top |
|
 |
|
|
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot vote in polls in this forum
|
|