<?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[std::wstring &amp;lt;Schlechtes Ptr&amp;gt;]]></title><description><![CDATA[<p>Hallo zusammen,<br />
ich schreibe gerade eine Klasse, die einen std::wstring enthält:</p>
<pre><code class="language-cpp">//game.h
#pragma once

#include &quot;graphicsmanager.h&quot;
#include &quot;windowinfo.h&quot;
#include &lt;string&gt;

class Game {
private:
	GraphicsManager graphicsManager;
	WindowInfo windowInfo;
	std::wstring standardCaption;
public:
	Game();
	void init();
	void mainLoop();
	void shutDown();

	GraphicsManager createGraphicsManager();
	WindowInfo createWindowInfo();
	GraphicsManager createGraphicsManagerAndInitWindowInfoAndStandardCaption();
};

//Der Konstruktor
Game::Game() : graphicsManager(createGraphicsManagerAndInitWindowInfoAndStandardCaption()), standardCaption(L&quot;HiRechts&quot;) {}
</code></pre>
<p>Das Problem ist, dass nach der Initialisierung im VC++2010-Debugger stdCaption &lt;Schlechtes Ptr&gt; ist; ich kann stdCaption auch keinen Wert zuweisen.</p>
<p>Hat jemand auch das Problem? Bei Google kamen ein Paar Treffer, die aber alle sehr schwer zu verstehen waren <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /> und (glaube ich) nicht dasselbe Problem waren.</p>
<p>mfg paulrei</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/289218/std-wstring-lt-schlechtes-ptr-gt</link><generator>RSS for Node</generator><lastBuildDate>Wed, 19 Aug 2026 07:35:20 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/289218.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 30 Jun 2011 12:57:50 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to std::wstring &amp;lt;Schlechtes Ptr&amp;gt; on Thu, 30 Jun 2011 12:57:50 GMT]]></title><description><![CDATA[<p>Hallo zusammen,<br />
ich schreibe gerade eine Klasse, die einen std::wstring enthält:</p>
<pre><code class="language-cpp">//game.h
#pragma once

#include &quot;graphicsmanager.h&quot;
#include &quot;windowinfo.h&quot;
#include &lt;string&gt;

class Game {
private:
	GraphicsManager graphicsManager;
	WindowInfo windowInfo;
	std::wstring standardCaption;
public:
	Game();
	void init();
	void mainLoop();
	void shutDown();

	GraphicsManager createGraphicsManager();
	WindowInfo createWindowInfo();
	GraphicsManager createGraphicsManagerAndInitWindowInfoAndStandardCaption();
};

//Der Konstruktor
Game::Game() : graphicsManager(createGraphicsManagerAndInitWindowInfoAndStandardCaption()), standardCaption(L&quot;HiRechts&quot;) {}
</code></pre>
<p>Das Problem ist, dass nach der Initialisierung im VC++2010-Debugger stdCaption &lt;Schlechtes Ptr&gt; ist; ich kann stdCaption auch keinen Wert zuweisen.</p>
<p>Hat jemand auch das Problem? Bei Google kamen ein Paar Treffer, die aber alle sehr schwer zu verstehen waren <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /> und (glaube ich) nicht dasselbe Problem waren.</p>
<p>mfg paulrei</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2086611</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2086611</guid><dc:creator><![CDATA[paulrei]]></dc:creator><pubDate>Thu, 30 Jun 2011 12:57:50 GMT</pubDate></item><item><title><![CDATA[Reply to std::wstring &amp;lt;Schlechtes Ptr&amp;gt; on Thu, 30 Jun 2011 12:59:56 GMT]]></title><description><![CDATA[<p>Das ist so kein vollständiges Progamm und kann folglich auch nicht im Debugger betrachtet werden.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2086614</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2086614</guid><dc:creator><![CDATA[camper]]></dc:creator><pubDate>Thu, 30 Jun 2011 12:59:56 GMT</pubDate></item><item><title><![CDATA[Reply to std::wstring &amp;lt;Schlechtes Ptr&amp;gt; on Thu, 30 Jun 2011 13:06:58 GMT]]></title><description><![CDATA[<p>Ja schon...<br />
es sind leider 17 Dateien; soll ich die hier posten?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2086623</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2086623</guid><dc:creator><![CDATA[paulrei]]></dc:creator><pubDate>Thu, 30 Jun 2011 13:06:58 GMT</pubDate></item><item><title><![CDATA[Reply to std::wstring &amp;lt;Schlechtes Ptr&amp;gt; on Thu, 30 Jun 2011 13:07:52 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">andTryToMakeYourFunctionNamesNotTooLongAndBetterSplitFunctionsIfPossible();
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2086626</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2086626</guid><dc:creator><![CDATA[Jockelx]]></dc:creator><pubDate>Thu, 30 Jun 2011 13:07:52 GMT</pubDate></item><item><title><![CDATA[Reply to std::wstring &amp;lt;Schlechtes Ptr&amp;gt; on Thu, 30 Jun 2011 13:08:20 GMT]]></title><description><![CDATA[<p>paulrei schrieb:</p>
<blockquote>
<p>Ja schon...<br />
es sind leider 17 Dateien; soll ich die hier posten?</p>
</blockquote>
<p>Nein. Du sollst unwesentliches rauskürzen und zwischendurch immer wieder schauen, ob der Fehler noch besteht. Wenn du dann am Ende ein sehr stark gekürztes Programm hast (max. 100 Zeilen) und der Fehler immernoch auftritt, darfst du es gerne posten <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2086627</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2086627</guid><dc:creator><![CDATA[pumuckl]]></dc:creator><pubDate>Thu, 30 Jun 2011 13:08:20 GMT</pubDate></item><item><title><![CDATA[Reply to std::wstring &amp;lt;Schlechtes Ptr&amp;gt; on Thu, 30 Jun 2011 13:18:51 GMT]]></title><description><![CDATA[<p>paulrei schrieb:</p>
<blockquote>
<p>Das Problem ist, dass nach der Initialisierung im VC++2010-Debugger stdCaption &lt;Schlechtes Ptr&gt; ist; ich kann stdCaption auch keinen Wert zuweisen.</p>
</blockquote>
<ol>
<li>Was heißt &quot;nach der Initialisierung&quot;? An welcher Stelle im Code steht der Debugger?</li>
<li>Was soll &quot;ich kann stdCaption auch keinen Wert zuweisen&quot; bedeuten?</li>
</ol>
]]></description><link>https://www.c-plusplus.net/forum/post/2086636</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2086636</guid><dc:creator><![CDATA[manni66]]></dc:creator><pubDate>Thu, 30 Jun 2011 13:18:51 GMT</pubDate></item><item><title><![CDATA[Reply to std::wstring &amp;lt;Schlechtes Ptr&amp;gt; on Thu, 30 Jun 2011 14:05:51 GMT]]></title><description><![CDATA[<p>Also...<br />
wenn man in Zeile 61 einen Haltepunkt setzt, ist zu diesem Zeitpunkt standardCaption &quot;&lt;Schlechtes Ptr&gt;&quot;.</p>
<p>@manni66: es heißt, dass ich keinen Ausdruck wie stdCaption = L&quot;Hi&quot;; im Code einfügen kann, weil dies den Fehler des Programms unten erzeugt.</p>
<pre><code class="language-cpp">#include &lt;string&gt;

struct ArgumentNullException {
	std::wstring message;
};
template&lt;typename T&gt; class Coordinate {
public:
	Coordinate()
	{
		X = Y = 0;
	}
	Coordinate(T x, T y) 
	{
		X = x;
		Y = y;
	}
	T X, Y;
};
template&lt;typename T&gt; Coordinate&lt;T&gt; operator+(Coordinate&lt;T&gt; &amp;first, Coordinate&lt;T&gt; &amp;second) {
	Coordinate&lt;T&gt; ret;
	ret.X = first.X + second.X;
	ret.Y = first.Y + second.Y;
	return ret;
}
struct WindowInfo {
	unsigned int width, height;
	unsigned int bits;

	WindowInfo(unsigned int width = 640, unsigned int height  = 480, unsigned int bits = 16) {
		this-&gt;width = width;
		this-&gt;height = height;
		this-&gt;bits = bits;
	}
};
class GraphicsManager {
public:
	GraphicsManager(WindowInfo *windowInfo, std::wstring caption);
	void init(WindowInfo *windowInfo, std::wstring caption);
	void drop();
};
class Game {
private:
	GraphicsManager graphicsManager;
	WindowInfo windowInfo;
	std::wstring standardCaption;
public:
	Game() : graphicsManager(createGManagerInitWinInfoAndStdCaption()), standardCaption(L&quot;HiRechts&quot;) {}
	void shutDown();
	GraphicsManager createGraphicsManager();
	WindowInfo createWindowInfo();
	GraphicsManager createGManagerInitWinInfoAndStdCaption();
};
int main() {
	Game game;
	game.shutDown();
}
void Game::shutDown() {
	graphicsManager.drop();
}
GraphicsManager Game::createGManagerInitWinInfoAndStdCaption() {
	standardCaption = L&quot;Hi&quot;;
	windowInfo = WindowInfo();
	return GraphicsManager(&amp;windowInfo, standardCaption);
}
GraphicsManager::GraphicsManager(WindowInfo *windowInfo, std::wstring caption) {}
void GraphicsManager::drop() {}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/2086666</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2086666</guid><dc:creator><![CDATA[paulrei]]></dc:creator><pubDate>Thu, 30 Jun 2011 14:05:51 GMT</pubDate></item><item><title><![CDATA[Reply to std::wstring &amp;lt;Schlechtes Ptr&amp;gt; on Thu, 30 Jun 2011 14:11:59 GMT]]></title><description><![CDATA[<p>&lt;Schlechtes Ptr&gt; (was für eine doofe Übersetzung) heißt eigentlich, das der Pointer nicht initialisiert ist. Wo ist jetzt das Problem, diesen Pointer vor der Benutzung zu initialisieren?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2086670</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2086670</guid><dc:creator><![CDATA[Artchi]]></dc:creator><pubDate>Thu, 30 Jun 2011 14:11:59 GMT</pubDate></item><item><title><![CDATA[Reply to std::wstring &amp;lt;Schlechtes Ptr&amp;gt; on Thu, 30 Jun 2011 14:12:39 GMT]]></title><description><![CDATA[<p>Du rust die Funktion ja auch aus der Initialisierungsliste herraus aus. Zu dem Zeitpunkt wurde aber für standardCaption noch garkein Konstruktor aufgerufen. Demzufolge kannst du auch noch nicht damit arbeiten.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2086671</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2086671</guid><dc:creator><![CDATA[inter2k3]]></dc:creator><pubDate>Thu, 30 Jun 2011 14:12:39 GMT</pubDate></item><item><title><![CDATA[Reply to std::wstring &amp;lt;Schlechtes Ptr&amp;gt; on Thu, 30 Jun 2011 14:14:49 GMT]]></title><description><![CDATA[<p>Du rufst die Funktion &quot;createGManagerInitWinInfoAndStdCaption&quot; <strong>während</strong> der Konstruktion von Game auf, und das, <strong>bevor</strong> standardCaption initialisiert wurde.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2086672</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2086672</guid><dc:creator><![CDATA[manni66]]></dc:creator><pubDate>Thu, 30 Jun 2011 14:14:49 GMT</pubDate></item><item><title><![CDATA[Reply to std::wstring &amp;lt;Schlechtes Ptr&amp;gt; on Thu, 30 Jun 2011 14:22:31 GMT]]></title><description><![CDATA[<p>Ah, danke; nach Verschieben der Initialisierungen in den Konstruktorrumpf klappts - danke <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2086682</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2086682</guid><dc:creator><![CDATA[paulrei]]></dc:creator><pubDate>Thu, 30 Jun 2011 14:22:31 GMT</pubDate></item><item><title><![CDATA[Reply to std::wstring &amp;lt;Schlechtes Ptr&amp;gt; on Thu, 30 Jun 2011 14:26:28 GMT]]></title><description><![CDATA[<p>paulrei schrieb:</p>
<blockquote>
<p>Ah, danke; nach Verschieben der Initialisierungen in den Konstruktorrumpf klappts - danke <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /></p>
</blockquote>
<p>Glückssache. Im Konstruktorrumpf sind das keine Initialisierungen mehr sondern Zuweisungen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2086687</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2086687</guid><dc:creator><![CDATA[pumuckl]]></dc:creator><pubDate>Thu, 30 Jun 2011 14:26:28 GMT</pubDate></item></channel></rss>