Erzeuge einen Vektor von Streams

9

Ich versuche, einen Vektor von ofstreams zu erstellen.

%Vor%

Dieser Code wird nicht kompiliert .. speziell die letzte Zeile, in der ich versuche, den ofstream zu meinem Vektor hinzuzufügen, erzeugt einen Fehler. Was übersehe ich?

    
user3298872 12.03.2015, 08:07
quelle

2 Antworten

12

Wenn Sie C ++ 11 verwenden können, können Sie std::move verwenden, wenn Sie nicht nur Zeiger (Smart Pointer) im Vektor speichern.

%Vor%

oder mit smart ptrs

%Vor%     
ForEveR 12.03.2015 08:13
quelle
9

Sie können vector::emplace_back anstelle von push_back verwenden. Dadurch werden die Streams direkt im Vektor erstellt, sodass der Kopierkonstruktor nicht benötigt wird:

%Vor%     
w.b 12.03.2015 13:25
quelle

Tags und Links