<?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[Problem mit Verschieben von Klassen]]></title><description><![CDATA[<p>Hallo Community,</p>
<p>ich bin gerade am C++ lernen und habe folgendes Problem:</p>
<p>Wenn ich eine Klasse in der normalen .cpp-Datei deklariere, z.B.:</p>
<pre><code>class cBall
{
public:
	cBall (int initialAge = 50); //Konstruktor
	~cBall();
	int GetAge() const;
	void SetAge(int age);

private:
	int itsAge;	
};
</code></pre>
<p>dann funktioniert alles einwandfrei. Wenn ich nun diese Deklaration in stdafx.h verschiebe, wie es mir in meinem Tutorial empfohlen wird, ändert sich auch nichts daran.</p>
<p>Bis auf eine Kleinigkeit: Der Wert initialAge = 50 (in Zeile 4) lässt sich in der normalen Datei beliebig verändern und wird auch für das Programm übernommen. Wenn ich diesen Wert aber bei der Deklaration in der stdafx.h-Datei z.B. auf 100 ändere, zeigt mir das Programm immer noch den Anfangswert 50 an, obwohl nirgends mehr in meinem Programm diese Zahl steht.</p>
<p>Um eure vermutlich ersten Vermutungen auszuräumen;) : Die Deklaration meines Objekts lautet:</p>
<pre><code>cBall Ball1;
</code></pre>
<p>und die Initialisierung des Wertes geschieht in folgender Funktion:</p>
<pre><code>cBall::cBall(int initialAge)
{
	itsAge		= initialAge;
}
</code></pre>
<p>Ich benutze VisualStudio2010. Ich vermute mal, dass irgendwo solche Werte schon vorher irgendwo gespeichert werden und dann gar nicht mehr abgefragt werden..(so sieht es zumindest aus). Aber was würde das für einen Sinn machen, wenn der Compiler die Datei teilweise überspringt? <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /> <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/topic/313056/problem-mit-verschieben-von-klassen</link><generator>RSS for Node</generator><lastBuildDate>Sun, 02 Aug 2026 09:20:29 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/313056.rss" rel="self" type="application/rss+xml"/><pubDate>Sun, 20 Jan 2013 17:19:23 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Problem mit Verschieben von Klassen on Sun, 20 Jan 2013 17:19:23 GMT]]></title><description><![CDATA[<p>Hallo Community,</p>
<p>ich bin gerade am C++ lernen und habe folgendes Problem:</p>
<p>Wenn ich eine Klasse in der normalen .cpp-Datei deklariere, z.B.:</p>
<pre><code>class cBall
{
public:
	cBall (int initialAge = 50); //Konstruktor
	~cBall();
	int GetAge() const;
	void SetAge(int age);

private:
	int itsAge;	
};
</code></pre>
<p>dann funktioniert alles einwandfrei. Wenn ich nun diese Deklaration in stdafx.h verschiebe, wie es mir in meinem Tutorial empfohlen wird, ändert sich auch nichts daran.</p>
<p>Bis auf eine Kleinigkeit: Der Wert initialAge = 50 (in Zeile 4) lässt sich in der normalen Datei beliebig verändern und wird auch für das Programm übernommen. Wenn ich diesen Wert aber bei der Deklaration in der stdafx.h-Datei z.B. auf 100 ändere, zeigt mir das Programm immer noch den Anfangswert 50 an, obwohl nirgends mehr in meinem Programm diese Zahl steht.</p>
<p>Um eure vermutlich ersten Vermutungen auszuräumen;) : Die Deklaration meines Objekts lautet:</p>
<pre><code>cBall Ball1;
</code></pre>
<p>und die Initialisierung des Wertes geschieht in folgender Funktion:</p>
<pre><code>cBall::cBall(int initialAge)
{
	itsAge		= initialAge;
}
</code></pre>
<p>Ich benutze VisualStudio2010. Ich vermute mal, dass irgendwo solche Werte schon vorher irgendwo gespeichert werden und dann gar nicht mehr abgefragt werden..(so sieht es zumindest aus). Aber was würde das für einen Sinn machen, wenn der Compiler die Datei teilweise überspringt? <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /> <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2291680</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2291680</guid><dc:creator><![CDATA[Mr.Plow]]></dc:creator><pubDate>Sun, 20 Jan 2013 17:19:23 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Verschieben von Klassen on Sun, 20 Jan 2013 17:21:31 GMT]]></title><description><![CDATA[<p>Die stdafx.h gehört wahrscheinlich zu dem &quot;Precompiled-Header&quot;-Konzept und hat mit Standard-C++ nichts zu tun. Ich empfehle ein anderes Tutorial, wenn du C++ lernen möchtest.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2291681</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2291681</guid><dc:creator><![CDATA[cooky451]]></dc:creator><pubDate>Sun, 20 Jan 2013 17:21:31 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Verschieben von Klassen on Sun, 20 Jan 2013 17:54:07 GMT]]></title><description><![CDATA[<p>Danke, das war das Problem. Wenn ich eine eigene Header-Datei erstelle und einbinde klappt alles, wie ich es will:)</p>
<p>Thread kann geclosed werden.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2291698</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2291698</guid><dc:creator><![CDATA[Mr.Plow]]></dc:creator><pubDate>Sun, 20 Jan 2013 17:54:07 GMT</pubDate></item></channel></rss>