<?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[Variable aus externe datei includieren ?]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich will einen string den ich zuvor in der datei a.cpp festgelegt habe in der datei b.cpp benutzen.</p>
<pre><code class="language-cpp">//a.cpp
#include &lt;iostream&gt;
using namespace std;

extern string teststring;

main(){
    teststring=&quot;Jawoll&quot;;
}
</code></pre>
<pre><code class="language-cpp">//b.cpp
#include &lt;iostream&gt;
using namespace std;

main(){
    cout &lt;&lt; teststring;
}
</code></pre>
<p>Was fehlt da noch ? oder ist es komplett mist ?</p>
<p>Mfg Analyse</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/277969/variable-aus-externe-datei-includieren</link><generator>RSS for Node</generator><lastBuildDate>Tue, 25 Aug 2026 16:36:20 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/277969.rss" rel="self" type="application/rss+xml"/><pubDate>Sat, 27 Nov 2010 11:22:27 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Variable aus externe datei includieren ? on Sat, 27 Nov 2010 11:22:27 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>ich will einen string den ich zuvor in der datei a.cpp festgelegt habe in der datei b.cpp benutzen.</p>
<pre><code class="language-cpp">//a.cpp
#include &lt;iostream&gt;
using namespace std;

extern string teststring;

main(){
    teststring=&quot;Jawoll&quot;;
}
</code></pre>
<pre><code class="language-cpp">//b.cpp
#include &lt;iostream&gt;
using namespace std;

main(){
    cout &lt;&lt; teststring;
}
</code></pre>
<p>Was fehlt da noch ? oder ist es komplett mist ?</p>
<p>Mfg Analyse</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1986628</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1986628</guid><dc:creator><![CDATA[Analyse]]></dc:creator><pubDate>Sat, 27 Nov 2010 11:22:27 GMT</pubDate></item><item><title><![CDATA[Reply to Variable aus externe datei includieren ? on Sat, 27 Nov 2010 11:24:31 GMT]]></title><description><![CDATA[<p>Das extern ist in der falschen Datei.</p>
<p>Du musst ja dem compiler sagen, dass das Symbol irgendwo definiert ist und er das erst beim Linken findet.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1986631</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1986631</guid><dc:creator><![CDATA[drakon]]></dc:creator><pubDate>Sat, 27 Nov 2010 11:24:31 GMT</pubDate></item><item><title><![CDATA[Reply to Variable aus externe datei includieren ? on Sat, 27 Nov 2010 11:25:54 GMT]]></title><description><![CDATA[<p>Falschrum. In der b.cpp musst du <code>extern string teststring;</code> schreiben.</p>
<pre><code class="language-cpp">//a.cpp
string teststring=&quot;Jawoll&quot;;
</code></pre>
<pre><code class="language-cpp">// b.cpp
extern string teststring;
int main(){
    cout &lt;&lt; teststring;
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1986634</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1986634</guid><dc:creator><![CDATA[SeppJ]]></dc:creator><pubDate>Sat, 27 Nov 2010 11:25:54 GMT</pubDate></item><item><title><![CDATA[Reply to Variable aus externe datei includieren ? on Sat, 27 Nov 2010 11:40:59 GMT]]></title><description><![CDATA[<p>Hmm,</p>
<p>bekomme ein &quot;undefined reference to `teststring'&quot; als fehler.</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;
using namespace std;

main(){
    string teststring=&quot;Jawoll&quot;;
}
</code></pre>
<pre><code class="language-cpp">#include &lt;iostream&gt;
using namespace std;

extern string teststring;
main(){
    cout &lt;&lt; teststring;
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1986644</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1986644</guid><dc:creator><![CDATA[Analyse]]></dc:creator><pubDate>Sat, 27 Nov 2010 11:40:59 GMT</pubDate></item><item><title><![CDATA[Reply to Variable aus externe datei includieren ? on Sat, 27 Nov 2010 11:49:21 GMT]]></title><description><![CDATA[<p>Mach einen Header und schreibe da das extern rein. Dann initialisierst du den string in a.cpp und kannst ihn jeder Datei benutzen, in der du den Header einbindest.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1986652</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1986652</guid><dc:creator><![CDATA[Lösung]]></dc:creator><pubDate>Sat, 27 Nov 2010 11:49:21 GMT</pubDate></item><item><title><![CDATA[Reply to Variable aus externe datei includieren ? on Sat, 27 Nov 2010 12:00:08 GMT]]></title><description><![CDATA[<pre><code class="language-cpp">#include &lt;iostream&gt; 
using namespace std; 

string teststring=&quot;Jawoll&quot;; // nicht lokal!

main(){ 
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1986657</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1986657</guid><dc:creator><![CDATA[drakon]]></dc:creator><pubDate>Sat, 27 Nov 2010 12:00:08 GMT</pubDate></item><item><title><![CDATA[Reply to Variable aus externe datei includieren ? on Sat, 27 Nov 2010 12:27:56 GMT]]></title><description><![CDATA[<p>Ne, also irgendwie hauts noch nicht hin.</p>
<p>Hab jetzt 3 dateien, a.cpp; b.cpp; a.h</p>
<p>a.cpp:</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;
using namespace std;

string teststring=&quot;Jawoll&quot;; // nicht lokal!
main(){
}
</code></pre>
<p>b.cpp:</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;
#include &quot;a.h&quot;
using namespace std;

main(){
cout &lt;&lt; teststring;
}
</code></pre>
<p>a.h:</p>
<pre><code class="language-cpp">#ifndef A_H_INCLUDED
#define A_H_INCLUDED

extern string teststring;

#endif // A_H_INCLUDED
</code></pre>
<p>Wenn ich b.cpp öffnen will bekomm ich immernoch &quot;undefined reference to `teststring'&quot; als fehlermeldung <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="😞"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1986668</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1986668</guid><dc:creator><![CDATA[Analyse]]></dc:creator><pubDate>Sat, 27 Nov 2010 12:27:56 GMT</pubDate></item><item><title><![CDATA[Reply to Variable aus externe datei includieren ? on Sat, 27 Nov 2010 12:52:35 GMT]]></title><description><![CDATA[<p>Wenn man deinen Code zum Laufen bringt ( <code>#include &lt;string&gt;</code> , <code>extern std::string</code> , <code>main()</code> raus aus a.cpp, <code>int</code> vor <code>main()</code> in b.cpp, ...), dann ist er korrekt. Dein Fehler liegt also in der Art und Weise, wie du die Dateien kompillierst.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1986677</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1986677</guid><dc:creator><![CDATA[korrekt]]></dc:creator><pubDate>Sat, 27 Nov 2010 12:52:35 GMT</pubDate></item><item><title><![CDATA[Reply to Variable aus externe datei includieren ? on Sat, 27 Nov 2010 14:07:32 GMT]]></title><description><![CDATA[<p>Du musst den Objectcode der a.cpp natürlich mitlinken. Das ist es was die undefined reference bedeutet. Woher soll denn auch sonst der teststring kommen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1986708</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1986708</guid><dc:creator><![CDATA[SeppJ]]></dc:creator><pubDate>Sat, 27 Nov 2010 14:07:32 GMT</pubDate></item><item><title><![CDATA[Reply to Variable aus externe datei includieren ? on Sat, 27 Nov 2010 14:08:02 GMT]]></title><description><![CDATA[<p>Übrigens muss deine <code>main()</code> -Funktion in C++ auf eine der folgenden Arten deklariert sein:</p>
<pre><code class="language-cpp">int main();
int main(int argc, char** argv);
</code></pre>
<p>Den Rückgabetyp wegzulassen, wenn es sich um <code>int</code> handelt, ist nicht erlaubt!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1986710</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1986710</guid><dc:creator><![CDATA[Nexus]]></dc:creator><pubDate>Sat, 27 Nov 2010 14:08:02 GMT</pubDate></item><item><title><![CDATA[Reply to Variable aus externe datei includieren ? on Sat, 27 Nov 2010 17:44:25 GMT]]></title><description><![CDATA[<p>Ok, jetzt funktioniert es.</p>
<p>lösung:</p>
<pre><code class="language-cpp">//////////////a.cpp
#include &lt;iostream&gt;
#include &lt;string&gt;

extern std::string teststring=&quot;Jawoll&quot;;
</code></pre>
<pre><code class="language-cpp">//////////////b.cpp
#include &lt;iostream&gt;
#include &quot;a.cpp&quot;
using namespace std;

int main(int argc, char** argv){
cout &lt;&lt; teststring;
}
</code></pre>
<p>Und schon gibt es das nächste problem, im oben gezeigten beispiel funkioniert es noch, aber in meinem projekt habe ich zwei .cpp dateien mit jeweils einer main() funktion. Der compiler gibt mir den fehler:</p>
<blockquote>
<p>declaration of C function 'int main()' conflicts with previous declaration 'int main(int, char**)'</p>
</blockquote>
<p>Muss ich da jetzt (wie bei den header dateien) mit ifdef abfragen ob es main gibt ?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1986776</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1986776</guid><dc:creator><![CDATA[Analyse]]></dc:creator><pubDate>Sat, 27 Nov 2010 17:44:25 GMT</pubDate></item><item><title><![CDATA[Reply to Variable aus externe datei includieren ? on Sat, 27 Nov 2010 18:00:32 GMT]]></title><description><![CDATA[<p>Analyse schrieb:</p>
<blockquote>
<p>Ok, jetzt funktioniert es.</p>
<p>lösung:</p>
<pre><code class="language-cpp">//////////////a.cpp
#include &lt;iostream&gt;
#include &lt;string&gt;

extern std::string teststring=&quot;Jawoll&quot;;
</code></pre>
<pre><code class="language-cpp">//////////////b.cpp
#include &lt;iostream&gt;
#include &quot;a.cpp&quot;
using namespace std;

int main(int argc, char** argv){
cout &lt;&lt; teststring;
}
</code></pre>
</blockquote>
<p><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="😕"
    /> Das funktioniert? Das ist eigentlich falsch.</p>
<blockquote>
<p>Und schon gibt es das nächste problem, im oben gezeigten beispiel funkioniert es noch, aber in meinem projekt habe ich zwei .cpp dateien mit jeweils einer main() funktion. Der compiler gibt mir den fehler:</p>
<blockquote>
<p>declaration of C function 'int main()' conflicts with previous declaration 'int main(int, char**)'</p>
</blockquote>
<p>Muss ich da jetzt (wie bei den header dateien) mit ifdef abfragen ob es main gibt ?</p>
</blockquote>
<p>Die main Funktion ist der Einstiegspunkt deines Programms. Wie kannst du mehrere Einstiegspunkte haben? Du musst dich schon für einen entscheiden.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1986781</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1986781</guid><dc:creator><![CDATA[SeppJ]]></dc:creator><pubDate>Sat, 27 Nov 2010 18:00:32 GMT</pubDate></item><item><title><![CDATA[Reply to Variable aus externe datei includieren ? on Sat, 27 Nov 2010 18:06:17 GMT]]></title><description><![CDATA[<p>SeppJ schrieb:</p>
<blockquote>
<p><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="😕"
    /> Das funktioniert? Das ist eigentlich falsch.</p>
</blockquote>
<p>Sofern er den Header nur in einer .cpp-Datei inkludiert, kann er dort schon eine Variablendefinition hinschreiben. Oder meinst du was Anderes?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1986785</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1986785</guid><dc:creator><![CDATA[Nexus]]></dc:creator><pubDate>Sat, 27 Nov 2010 18:06:17 GMT</pubDate></item><item><title><![CDATA[Reply to Variable aus externe datei includieren ? on Sat, 27 Nov 2010 18:08:26 GMT]]></title><description><![CDATA[<p>Nexus schrieb:</p>
<blockquote>
<p>SeppJ schrieb:</p>
<blockquote>
<p><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="😕"
    /> Das funktioniert? Das ist eigentlich falsch.</p>
</blockquote>
<p>Sofern er den Header nur in einer .cpp-Datei inkludiert, kann er dort schon eine Variablendefinition hinschreiben. Oder meinst du was Anderes?</p>
</blockquote>
<p>Der string wird doch nirgends definiert! Wo bekommt der Linker den her? Oder übersehe ich gerade etwas?</p>
<p>Außerdem:<br />
`#include &quot;a.cpp&quot;</p>
<p>`</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1986787</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1986787</guid><dc:creator><![CDATA[SeppJ]]></dc:creator><pubDate>Sat, 27 Nov 2010 18:08:26 GMT</pubDate></item><item><title><![CDATA[Reply to Variable aus externe datei includieren ? on Sat, 27 Nov 2010 18:12:56 GMT]]></title><description><![CDATA[<p>Analyse schrieb:</p>
<blockquote>
<pre><code class="language-cpp">#include &quot;a.cpp&quot;
</code></pre>
</blockquote>
<p>Ja, so klappt es <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>Oh [/quote] vergessen...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1986788</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1986788</guid><dc:creator><![CDATA[Vicious Falcon]]></dc:creator><pubDate>Sat, 27 Nov 2010 18:12:56 GMT</pubDate></item><item><title><![CDATA[Reply to Variable aus externe datei includieren ? on Sat, 27 Nov 2010 18:12:18 GMT]]></title><description><![CDATA[<p>Das inkludieren einer cpp-Datei funktioniert und ist auch nicht falsch. Aber man macht es trotzdem nicht, um zum Beispiel nicht alle cpp-Dateien neu übersetzten zu müssen, die nicht geändert wurden.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1986789</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1986789</guid><dc:creator><![CDATA[Nick Unbekannt]]></dc:creator><pubDate>Sat, 27 Nov 2010 18:12:18 GMT</pubDate></item><item><title><![CDATA[Reply to Variable aus externe datei includieren ? on Sat, 27 Nov 2010 18:13:59 GMT]]></title><description><![CDATA[<p>SeppJ schrieb:</p>
<blockquote>
<p>Der string wird doch nirgends definiert! Wo bekommt der Linker den her? Oder übersehe ich gerade etwas?</p>
</blockquote>
<p>Ja,</p>
<pre><code class="language-cpp">extern std::string teststring=&quot;Jawoll&quot;;
</code></pre>
<p>ist eine Definition. So ist es aber selten sinnvoll.</p>
<p>Das <code>include &quot;a.cpp&quot;</code> habe ich tatsächlich übersehen. <strong>Nie .cpp-Dateien einbinden!</strong></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1986790</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1986790</guid><dc:creator><![CDATA[Nexus]]></dc:creator><pubDate>Sat, 27 Nov 2010 18:13:59 GMT</pubDate></item><item><title><![CDATA[Reply to Variable aus externe datei includieren ? on Sat, 27 Nov 2010 18:15:34 GMT]]></title><description><![CDATA[<p>SeppJ schrieb:</p>
<blockquote>
<p>Der string wird doch nirgends definiert! Wo bekommt der Linker den her? Oder übersehe ich gerade etwas?</p>
</blockquote>
<p>Der er in jeder cpp-Datei auch eine main-Funktion stehen hat, wird das wohl nicht alles sein.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1986791</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1986791</guid><dc:creator><![CDATA[Nick Unbekannt]]></dc:creator><pubDate>Sat, 27 Nov 2010 18:15:34 GMT</pubDate></item><item><title><![CDATA[Reply to Variable aus externe datei includieren ? on Sat, 27 Nov 2010 19:19:18 GMT]]></title><description><![CDATA[<p>Langsam versteh ich garnichtsmehr.</p>
<p>Ich habe ein projekt, das ich der übersichtlichkeit wegen in mehrere dateien splitten will. In der ersten datei sollen nun zb. werte errechnet werden, die ich in der zweiten datei abrage und mit denen weiterrechne.</p>
<p>Wie soll das gehen wenn ich nur eine main() benutzen darf ?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1986806</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1986806</guid><dc:creator><![CDATA[Analyse]]></dc:creator><pubDate>Sat, 27 Nov 2010 19:19:18 GMT</pubDate></item><item><title><![CDATA[Reply to Variable aus externe datei includieren ? on Sat, 27 Nov 2010 19:29:49 GMT]]></title><description><![CDATA[<p>Mit der <code>main()</code> Funktion steigst du in dein Programm ein. Dann kannst du alles was du machen willst packst du in Funktionen und rufst die in der main auf. Wenn du nicht weißt, was Funktionen sind, dann fang nochmal gaaanz vorne mit C++ an. Und um jetzt nochmal zu dem extern zurückzukommen. So ist es richtig:</p>
<pre><code class="language-cpp">// extern.h
extern std::string test;

// a.cpp
#include &quot;extern.h&quot;
test = &quot;teststring&quot;;
// hier kannst du jetzt die Variable 'test' benutzen

//b.cpp
#include &quot;extern.h&quot;
// hier auch, wenn du extern.h inkludiert hast
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1986817</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1986817</guid><dc:creator><![CDATA[Lösung]]></dc:creator><pubDate>Sat, 27 Nov 2010 19:29:49 GMT</pubDate></item><item><title><![CDATA[Reply to Variable aus externe datei includieren ? on Sat, 27 Nov 2010 19:37:16 GMT]]></title><description><![CDATA[<p>Analyse schrieb:</p>
<blockquote>
<p>Wie soll das gehen wenn ich nur eine main() benutzen darf ?</p>
</blockquote>
<p>Objektorientierte Programmierung, Strukturierte Programmierung. Such’s dir aus. Und kauf dir ein vernünftiges C++ Buch. Aus gegebenem Anlass kann ich <a href="http://www.amazon.de/dp/3446416447" rel="nofollow">DAS HIER</a> empfehlen.</p>
<p>mfg, René~</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1986819</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1986819</guid><dc:creator><![CDATA[NewSoftzzz]]></dc:creator><pubDate>Sat, 27 Nov 2010 19:37:16 GMT</pubDate></item><item><title><![CDATA[Reply to Variable aus externe datei includieren ? on Sat, 27 Nov 2010 20:07:24 GMT]]></title><description><![CDATA[<p>so hat es leider auch nicht funktioniert &quot;Lösung&quot;, bekomme obwohl ich in beiden .cpp dateien die header datei mit der deklaration einbinde ein &quot;nicht deklariert&quot; als fehlermeldung.</p>
<p>Naja ich merke schon das ich die geduld von einigen hier langsam überstrapaziere <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f644.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_rolling_eyes"
      title=":rolling_eyes:"
      alt="🙄"
    /></p>
<p>Danke für den tipp Rene aber ich habe bereits ein c++ buch was sogar fast den gleichen titel hat, leider ist es eine qual mit diesen büchern, bis ich da mal was gefunden habe...(trotz inhaltsverzeichniss..)<br />
dachte eigentlich das ist hier schnell gelöst aber scheint ja nun nicht so zu sein.</p>
<p>Danke an alle, ich werd mir jetzt doch nochmal das buch raussuchen und versuchen das alleine zu lösen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1986838</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1986838</guid><dc:creator><![CDATA[Analyse]]></dc:creator><pubDate>Sat, 27 Nov 2010 20:07:24 GMT</pubDate></item><item><title><![CDATA[Reply to Variable aus externe datei includieren ? on Sat, 27 Nov 2010 20:15:34 GMT]]></title><description><![CDATA[<p>Analyse schrieb:</p>
<blockquote>
<p>Danke für den tipp Rene aber ich habe bereits ein c++ buch was sogar fast den gleichen titel hat, leider ist es eine qual mit diesen büchern, bis ich da mal was gefunden habe...(trotz inhaltsverzeichniss..)</p>
</blockquote>
<p>lol! Um C++ zu lernen liest man das Buch auch von links nach rechts durch und springt da nicht im Buch drin rum weil man meint, dass man schon alles kann, aber dann nicht mal weiß was die Funktion main() macht..</p>
<p>mfg, René~</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1986844</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1986844</guid><dc:creator><![CDATA[NewSoftzzz]]></dc:creator><pubDate>Sat, 27 Nov 2010 20:15:34 GMT</pubDate></item><item><title><![CDATA[Reply to Variable aus externe datei includieren ? on Sat, 27 Nov 2010 20:24:33 GMT]]></title><description><![CDATA[<p>Mal eine andere Sache. Eigentlich arbeitet man nicht mit globalen Variablen. Und wenn man das berücksichtigt, dann ergibt sich das Problem mit <code>extern</code> auch nicht.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1986851</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1986851</guid><dc:creator><![CDATA[Nick Unbekannt]]></dc:creator><pubDate>Sat, 27 Nov 2010 20:24:33 GMT</pubDate></item><item><title><![CDATA[Reply to Variable aus externe datei includieren ? on Sat, 27 Nov 2010 20:38:21 GMT]]></title><description><![CDATA[<p>ich geh da eher nach learning by doing, wenn ich das im buch mal lese, vllt. eine übungsaufgabe dazu mache ist es beim nächstenmal buchaufschlagen weg. :p</p>
<p>Und da ich schon erfahrungen in anderen programmiersprachen habe und aktuell ein projekt in c++ realisieren will, wo es halt mal an der ein oder anderen stelle hakt da ich noch relativ neu in c++ bin such ich mir das halt im inet zusammen oder frag mal in der community nach.</p>
<blockquote>
<p>Mal eine andere Sache. Eigentlich arbeitet man nicht mit globalen Variablen. Und wenn man das berücksichtigt, dann ergibt sich das Problem mit extern auch nicht.</p>
</blockquote>
<p>Sondern dann mit funkionsaufrufen ? hab ich das wenigstes mitgenommen <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/1f62e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_open_mouth"
      title=":open_mouth:"
      alt="😮"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1986856</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1986856</guid><dc:creator><![CDATA[Analyse]]></dc:creator><pubDate>Sat, 27 Nov 2010 20:38:21 GMT</pubDate></item><item><title><![CDATA[Reply to Variable aus externe datei includieren ? on Sat, 27 Nov 2010 21:09:14 GMT]]></title><description><![CDATA[<p>Analyse schrieb:</p>
<blockquote>
<p>Sondern dann mit funkionsaufrufen ? hab ich das wenigstes mitgenommen <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/1f62e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--face_with_open_mouth"
      title=":open_mouth:"
      alt="😮"
    /></p>
</blockquote>
<p>Genau so. <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="🙂"
    /><br />
Ich weiß nicht was du genau vor hast, aber man kann dein Problem in etwa so angehen.</p>
<pre><code class="language-cpp">// text.h
#ifndef HEADER
#define HEADER
#include &lt;string&gt;

// Prototypen zum Lesen und Schreiben
void text_schreiben(std::string text);
std::string text_lesen();

#endif

// text.cpp
#include &quot;text.h&quot;

static std::string mein_text;

void text_schreiben(std::string text)
{
    mein_text = text;
}

std::string text_lesen()
{
    return mein_text;
}

// main.cpp
#include &lt;iostream&gt;
#include &lt;ostream&gt;
#include &quot;text.h&quot;

int main()
{
    text_schreiben(&quot;Hallo du!&quot;);
    std::cout &lt;&lt; text_lesen() &lt;&lt; std::endl;
    return 0;
}
</code></pre>
<p>Wie du siehst ist der Text immer noch nicht wirklich gekapselt, wird aber schon mal auf das eine cpp-File durch die Eigenschaft <code>static</code> beschränkt. An der Stelle könnte man sich auch eine Klasse mit statischen Methoden erstellen und dann die Variable darin schützen. Was dann so aussehen würde.</p>
<pre><code class="language-cpp">// text.h
#ifndef HEADER
#define HEADER
#include &lt;string&gt;

class Text
{
    static std::string mein_text;
public:
    static void schreiben(std::string text)
    {
        mein_text = text;
    }
    static std::string lesen()
    {
        return mein_text;
    }
};

#endif

// main.cpp
#include &lt;iostream&gt;
#include &lt;ostream&gt;
#include &quot;text.h&quot;

int main()
{
    Text::schreiben(&quot;Hallo du!&quot;);
    std::cout &lt;&lt; Text::lesen() &lt;&lt; std::endl;
    return 0;
}
</code></pre>
<p>Das kann man jetzt noch weiter treiben und daraus ein Singleton basteln, dass muss man aber einen Anfänger jetzt nicht unbedingt antun. Wenn du den Code aber verstanden hast, verstehst du auch ein Singleton. Wirklich wichtig hierbei ist die Bedeutung oder auch die verschieden Bedeutungen des Schlüsselwortes <code>static</code> . Je nach Kontext ist die Aussage nicht die gleiche.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1986864</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1986864</guid><dc:creator><![CDATA[Nick Unbekannt]]></dc:creator><pubDate>Sat, 27 Nov 2010 21:09:14 GMT</pubDate></item></channel></rss>