<?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[Segfault beim [] Operator von Maps]]></title><description><![CDATA[<p>Nabend zusammen,</p>
<p>ich habe folgendes Problem:</p>
<pre><code>void pfoConfig::SetVar (const char* Name, std::string Value) {

#ifdef DEBUG
    std::cout &lt;&lt; &quot;(Debug) Setting config var \&quot;&quot; &lt;&lt; Name &lt;&lt; &quot;\&quot; to \&quot;&quot; &lt;&lt; Value &lt;&lt; &quot;\&quot;&quot; &lt;&lt; std::endl;
#endif

    ConfigMap[std::string(Name)] = Value;
    std::cout &lt;&lt; &quot;SIEGFRIED URPILS!&quot; &lt;&lt; std::endl;
}
</code></pre>
<p>Dies ist die Methode meiner Config-Klasse zum ändern / setzen von Config-Variablen.</p>
<p>Das Problem ist, dass die Zeile:</p>
<pre><code>ConfigMap[std::string(Name)] = Value;
</code></pre>
<p>einen Segfault auslöst.</p>
<p>Die Map ist wie folgt deklariert:</p>
<pre><code>std::map&lt;std::string, std::string&gt; ConfigMap;
</code></pre>
<p>Die Debugausgabe ergibt folgendes:</p>
<blockquote>
<p>(Debug) Setting config var &quot;save_path&quot; to &quot;/home/dr-saar/screenshots&quot;</p>
<p>Program received signal SIGSEGV, Segmentation fault.</p>
</blockquote>
<p>Vielen Dank für eure Mühen im Voraus,</p>
<p>Dr-Saar</p>
<p><strong>-- Edit --</strong></p>
<p>Der Funktionsaufruf:</p>
<pre><code>if (dirdlgSavePath-&gt;ShowModal() == wxID_OK) {
        textctrlSavePath-&gt;SetValue (dirdlgSavePath-&gt;GetPath());
        std::stringstream ss;
        ss &lt;&lt; (dirdlgSavePath-&gt;GetPath ()).char_str();
        Config-&gt;SetVar (&quot;save_path&quot;, ss.str ());

        Config-&gt;Write ();
    }
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/topic/187354/segfault-beim-operator-von-maps</link><generator>RSS for Node</generator><lastBuildDate>Thu, 24 Sep 2026 15:06:44 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/187354.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 18 Jul 2007 19:02:54 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Segfault beim [] Operator von Maps on Wed, 18 Jul 2007 19:10:32 GMT]]></title><description><![CDATA[<p>Nabend zusammen,</p>
<p>ich habe folgendes Problem:</p>
<pre><code>void pfoConfig::SetVar (const char* Name, std::string Value) {

#ifdef DEBUG
    std::cout &lt;&lt; &quot;(Debug) Setting config var \&quot;&quot; &lt;&lt; Name &lt;&lt; &quot;\&quot; to \&quot;&quot; &lt;&lt; Value &lt;&lt; &quot;\&quot;&quot; &lt;&lt; std::endl;
#endif

    ConfigMap[std::string(Name)] = Value;
    std::cout &lt;&lt; &quot;SIEGFRIED URPILS!&quot; &lt;&lt; std::endl;
}
</code></pre>
<p>Dies ist die Methode meiner Config-Klasse zum ändern / setzen von Config-Variablen.</p>
<p>Das Problem ist, dass die Zeile:</p>
<pre><code>ConfigMap[std::string(Name)] = Value;
</code></pre>
<p>einen Segfault auslöst.</p>
<p>Die Map ist wie folgt deklariert:</p>
<pre><code>std::map&lt;std::string, std::string&gt; ConfigMap;
</code></pre>
<p>Die Debugausgabe ergibt folgendes:</p>
<blockquote>
<p>(Debug) Setting config var &quot;save_path&quot; to &quot;/home/dr-saar/screenshots&quot;</p>
<p>Program received signal SIGSEGV, Segmentation fault.</p>
</blockquote>
<p>Vielen Dank für eure Mühen im Voraus,</p>
<p>Dr-Saar</p>
<p><strong>-- Edit --</strong></p>
<p>Der Funktionsaufruf:</p>
<pre><code>if (dirdlgSavePath-&gt;ShowModal() == wxID_OK) {
        textctrlSavePath-&gt;SetValue (dirdlgSavePath-&gt;GetPath());
        std::stringstream ss;
        ss &lt;&lt; (dirdlgSavePath-&gt;GetPath ()).char_str();
        Config-&gt;SetVar (&quot;save_path&quot;, ss.str ());

        Config-&gt;Write ();
    }
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1328017</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1328017</guid><dc:creator><![CDATA[Dr-Saar]]></dc:creator><pubDate>Wed, 18 Jul 2007 19:10:32 GMT</pubDate></item><item><title><![CDATA[Reply to Segfault beim [] Operator von Maps on Wed, 18 Jul 2007 19:05:57 GMT]]></title><description><![CDATA[<p>Sicher dass 'Name' ungleich NULL ist?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1328020</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1328020</guid><dc:creator><![CDATA[Badestrand]]></dc:creator><pubDate>Wed, 18 Jul 2007 19:05:57 GMT</pubDate></item><item><title><![CDATA[Reply to Segfault beim [] Operator von Maps on Wed, 18 Jul 2007 19:09:08 GMT]]></title><description><![CDATA[<p>Badestrand schrieb:</p>
<blockquote>
<p>Sicher dass 'Name' ungleich NULL ist?</p>
</blockquote>
<p>Da die Debugausgabe einen Wert enthält, gehe ich mal davon aus.</p>
<p>Gruß</p>
<p>Dr-Saar</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1328023</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1328023</guid><dc:creator><![CDATA[Dr-Saar]]></dc:creator><pubDate>Wed, 18 Jul 2007 19:09:08 GMT</pubDate></item><item><title><![CDATA[Reply to Segfault beim [] Operator von Maps on Wed, 18 Jul 2007 19:36:10 GMT]]></title><description><![CDATA[<p>Oh stimmt, bin doof <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /></p>
<p>Was passiert, wenn du die Texte hardcodest, also:</p>
<pre><code class="language-cpp">ConfigMap[&quot;save_path&quot;] = &quot;/home/dr-saar/screenshots&quot;;
</code></pre>
<p>?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1328047</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1328047</guid><dc:creator><![CDATA[Badestrand]]></dc:creator><pubDate>Wed, 18 Jul 2007 19:36:10 GMT</pubDate></item></channel></rss>