C++Talk.NET Forum Index C++Talk.NET
C++ language newsgroups
 
Archives   FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Vector in Multithread-Anwendung lieber mit Pointern füllen?

 
Post new topic   Reply to topic    C++Talk.NET Forum Index -> C++ (German)
View previous topic :: View next topic  
Author Message
Michael Gebhart
Guest





PostPosted: Thu Dec 16, 2004 1:41 pm    Post subject: Vector in Multithread-Anwendung lieber mit Pointern füllen? Reply with quote



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





PostPosted: Fri Dec 17, 2004 4:16 pm    Post subject: Re: Vector in Multithread-Anwendung lieber mit Pointern füll Reply with quote



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





PostPosted: Fri Dec 17, 2004 8:16 pm    Post subject: Re: Vector in Multithread-Anwendung lieber mit Pointern füll Reply with quote



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
Display posts from previous:   
Post new topic   Reply to topic    C++Talk.NET Forum Index -> C++ (German) All times are GMT
Page 1 of 1

 
Jump to:  
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


Powered by phpBB © 2001, 2006 phpBB Group
SEO toolkit © 2004-2006 webmedic.