<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[stringstream in struct ??]]></title><description><![CDATA[<p>Hallo Leute ich habe irgendwie das Problem, dass wenn ich in eine struct einen stringstream als member habe, den folgenden Fehler bekomme:std::basic_ios&lt;_Elem,_Traits&gt;::basic_ios&quot;: Kein Zugriff auf private Member, dessen Deklaration in der std::basic_ios&lt;_Elem,_Traits&gt;-Klasse erfolgte</p>
<p>Ich habe das schon gegoogelt und da stand, dass passiert wenn man z.B ein stringstream als Rückgabewert einer Funktion hat ( da müsste man es mit einer referenz machen).</p>
<p>Aber hier weiß ich auch nicht.</p>
<p>So siehts aus:</p>
<pre><code>struct IProfile
{
	IProfile() : playername(&quot;&quot;), progress(&quot;&quot;){ }

	std::string playername;

	std::stringstream progress;

};
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/topic/312318/stringstream-in-struct</link><generator>RSS for Node</generator><lastBuildDate>Sun, 02 Aug 2026 23:45:40 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/312318.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 01 Jan 2013 18:53:40 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to stringstream in struct ?? on Tue, 01 Jan 2013 18:53:40 GMT]]></title><description><![CDATA[<p>Hallo Leute ich habe irgendwie das Problem, dass wenn ich in eine struct einen stringstream als member habe, den folgenden Fehler bekomme:std::basic_ios&lt;_Elem,_Traits&gt;::basic_ios&quot;: Kein Zugriff auf private Member, dessen Deklaration in der std::basic_ios&lt;_Elem,_Traits&gt;-Klasse erfolgte</p>
<p>Ich habe das schon gegoogelt und da stand, dass passiert wenn man z.B ein stringstream als Rückgabewert einer Funktion hat ( da müsste man es mit einer referenz machen).</p>
<p>Aber hier weiß ich auch nicht.</p>
<p>So siehts aus:</p>
<pre><code>struct IProfile
{
	IProfile() : playername(&quot;&quot;), progress(&quot;&quot;){ }

	std::string playername;

	std::stringstream progress;

};
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2285083</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2285083</guid><dc:creator><![CDATA[Bob Wolfskin]]></dc:creator><pubDate>Tue, 01 Jan 2013 18:53:40 GMT</pubDate></item><item><title><![CDATA[Reply to stringstream in struct ?? on Tue, 01 Jan 2013 18:55:06 GMT]]></title><description><![CDATA[<p>Ein stringstream Member? WTF?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2285084</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2285084</guid><dc:creator><![CDATA[Kellerautomat]]></dc:creator><pubDate>Tue, 01 Jan 2013 18:55:06 GMT</pubDate></item><item><title><![CDATA[Reply to stringstream in struct ?? on Tue, 01 Jan 2013 18:59:22 GMT]]></title><description><![CDATA[<p>Warum ??<br />
Ich würde das Teil gerne für serialisierubng benutzen mit boost.<br />
Diese stuktur soll erst geladen werden aus einer Datei und dann soll mit boost::archive::text_iarchive a(stringstream name)... das ganze mit diesem Archiv entserialisiert werden.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2285086</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2285086</guid><dc:creator><![CDATA[Bob Wolfskin]]></dc:creator><pubDate>Tue, 01 Jan 2013 18:59:22 GMT</pubDate></item><item><title><![CDATA[Reply to stringstream in struct ?? on Tue, 01 Jan 2013 19:00:10 GMT]]></title><description><![CDATA[<p>Der unmittelbare Fehler ist, dass Streams nicht kopierbar sind. Irgendwo machst du, möglicherweise implizit, eine Kopie des Members oder ganzen Objekts. Das geht dann natürlich nicht.</p>
<p>Kellerautomat schrieb:</p>
<blockquote>
<p>Ein stringstream Member? WTF?</p>
</blockquote>
<p>+1. Wozu soll das gut sein?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2285087</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2285087</guid><dc:creator><![CDATA[SeppJ]]></dc:creator><pubDate>Tue, 01 Jan 2013 19:00:10 GMT</pubDate></item><item><title><![CDATA[Reply to stringstream in struct ?? on Tue, 01 Jan 2013 19:06:38 GMT]]></title><description><![CDATA[<p>Ich weiß nicht ohne stringstream funktioniert alles einwandfrei, nur wenn ich in die struct den einfüge gehts nichtz mehr ( ich mach niergendwo noch irgendwas )</p>
<p>Ja wie gesagt, ich bin mir eigendlich auch nicht so sicher ob das so toll sein soll.</p>
<p>Die Idee war eigendlich, dass man einen Profilmamnager hat, der Profile ( in einem Spiel ) speichert.Dieses Profil besteht noch aus name und das zweite sollte der Fortschritt sein. Bei dem Fortschritt werden einfach alle klassen, die einfluss auf den Fortschritt haben, bzw. dsas ganze speichern serialisiert und als stream gespeichert.</p>
<p>Ich brauche jedoch auf jedenfall einen stream zum serialisieren, fstream oder eben stringstream, da wäre ein stringstream natürlich besser,</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2285089</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2285089</guid><dc:creator><![CDATA[Bob Wolfskin]]></dc:creator><pubDate>Tue, 01 Jan 2013 19:06:38 GMT</pubDate></item><item><title><![CDATA[Reply to stringstream in struct ?? on Tue, 01 Jan 2013 19:14:40 GMT]]></title><description><![CDATA[<p>Bob Wolfskin schrieb:</p>
<blockquote>
<p>Ich weiß nicht ohne stringstream funktioniert alles einwandfrei, nur wenn ich in die struct den einfüge gehts nichtz mehr ( ich mach niergendwo noch irgendwas )</p>
</blockquote>
<p>Lies nochmal SeppJs Antwort.</p>
<p>Bob Wolfskin schrieb:</p>
<blockquote>
<p>Ich brauche jedoch auf jedenfall einen stream zum serialisieren, fstream oder eben stringstream, da wäre ein stringstream natürlich besser,</p>
</blockquote>
<p>Warum muss das ein Member der Klasse sein? Du kannst den Stream als lokale Variable in der Serialisierungsfunktion erstellen.</p>
<p>Und wieso sollte <code>std::stringstream</code> besser sein als <code>std::fstream</code> ? Die beiden haben verschiedene Anwendungsgebiete (Strings und Dateien).</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2285094</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2285094</guid><dc:creator><![CDATA[Nexus]]></dc:creator><pubDate>Tue, 01 Jan 2013 19:14:40 GMT</pubDate></item><item><title><![CDATA[Reply to stringstream in struct ?? on Tue, 01 Jan 2013 19:24:26 GMT]]></title><description><![CDATA[<p>Ich habe 2 wege:<br />
Ich erstelle in der sturctur das stringstream indem die serialisieren klassen gespeichert sind ( d.h auch als member ) und speichere es direkt.</p>
<p>Oder ich erstelle einfach mit fstream eine zweite Datei, wo ich dann eben das ganze serialisierte habe.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2285099</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2285099</guid><dc:creator><![CDATA[Bob Wolfskin]]></dc:creator><pubDate>Tue, 01 Jan 2013 19:24:26 GMT</pubDate></item><item><title><![CDATA[Reply to stringstream in struct ?? on Wed, 02 Jan 2013 20:05:32 GMT]]></title><description><![CDATA[<p>Ich verstehe nicht, was du damit erreichen willst. Wenn du die Daten serialisieren willst, dann nützt es auch nichts, wenn jede Instanz in einen eigenen Stream schreibt.</p>
<p>Ich denke für deine Zwecke eignet sich eher eine Methode, die eine Referenz auf einen stringstream als Parameter hat.</p>
<pre><code>struct IProfile 
{ 
    IProfile() : playername(&quot;&quot;), progress(&quot;&quot;){ } 

    std::string playername; 

    void serialize(std::stringstream&amp; stream)
    {
        stream&lt;&lt;playername; // oder was du hier auch immer machen willst
    }
    void deserialize(std::stringstream&amp; stream)
    {
        stream&gt;&gt;playername;
    }
};
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2285463</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2285463</guid><dc:creator><![CDATA[Marthog]]></dc:creator><pubDate>Wed, 02 Jan 2013 20:05:32 GMT</pubDate></item></channel></rss>