<?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[globaler zeiger]]></title><description><![CDATA[<p>hallo,<br />
grundsätzlich habe ich ein verständnis für die sprache c++.<br />
was ich aber leider nicht hin bekomme ist:<br />
ich möchte ein globales objekt erzeugen (im prinzip eine liste oder array mit ein paar funktionen).<br />
das möchte ich gern so initialisieren, dass ich aus anderen funktionen und klassen heraus darauf zu greifen kann und dinge hineinschreiben bzw. herauslesen kann.<br />
so inetwa:<br />
..<br />
..<br />
class feld {<br />
..<br />
private: int k;<br />
public: void set (int p) {k = p;}<br />
};<br />
feld k;<br />
class edit {<br />
...<br />
...<br />
public: edit ()<br />
{<br />
k.set(1);<br />
}<br />
};<br />
main() {}..</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/223411/globaler-zeiger</link><generator>RSS for Node</generator><lastBuildDate>Sat, 03 Oct 2026 19:19:08 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/223411.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 25 Sep 2008 16:27:12 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to globaler zeiger on Thu, 25 Sep 2008 16:27:12 GMT]]></title><description><![CDATA[<p>hallo,<br />
grundsätzlich habe ich ein verständnis für die sprache c++.<br />
was ich aber leider nicht hin bekomme ist:<br />
ich möchte ein globales objekt erzeugen (im prinzip eine liste oder array mit ein paar funktionen).<br />
das möchte ich gern so initialisieren, dass ich aus anderen funktionen und klassen heraus darauf zu greifen kann und dinge hineinschreiben bzw. herauslesen kann.<br />
so inetwa:<br />
..<br />
..<br />
class feld {<br />
..<br />
private: int k;<br />
public: void set (int p) {k = p;}<br />
};<br />
feld k;<br />
class edit {<br />
...<br />
...<br />
public: edit ()<br />
{<br />
k.set(1);<br />
}<br />
};<br />
main() {}..</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1588014</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1588014</guid><dc:creator><![CDATA[d00j1]]></dc:creator><pubDate>Thu, 25 Sep 2008 16:27:12 GMT</pubDate></item><item><title><![CDATA[Reply to globaler zeiger on Thu, 25 Sep 2008 16:32:49 GMT]]></title><description><![CDATA[<p>1. benutze für code bitte die entsprechenden tags, da mann den code sonst kaum lesen kann.<br />
2. zeugt dein Wunsch von schlechtem Design, was hält dich denn davon ab, das zu bearbeitenden Feld als parameter zu geben (per reference oder pointer).<br />
3. warum ist die Edit methode kein member von deinem Feld, das wär das logischst (zumindest wenn ich das bisschen code so sehe)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1588019</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1588019</guid><dc:creator><![CDATA[vlad_tepesch]]></dc:creator><pubDate>Thu, 25 Sep 2008 16:32:49 GMT</pubDate></item><item><title><![CDATA[Reply to globaler zeiger on Thu, 25 Sep 2008 16:34:43 GMT]]></title><description><![CDATA[<p>mach ein header file mit</p>
<pre><code class="language-cpp">#ifndef GLOBAL_VARS_H
#define GLOBAL_VARS_H
extern feld * k;
#endif
</code></pre>
<p>und in einem der source code files definierst du dann das feld.</p>
<pre><code class="language-cpp">feld * k = NULL;
</code></pre>
<p>So müsste das klappen.</p>
<p>LG<br />
Neph</p>
<p>PS: vlad_tepesch hat recht. In den allermeisten Fällen brauchst du keine globale Variable.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1588020</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1588020</guid><dc:creator><![CDATA[Nephelauxetic]]></dc:creator><pubDate>Thu, 25 Sep 2008 16:34:43 GMT</pubDate></item><item><title><![CDATA[Reply to globaler zeiger on Thu, 25 Sep 2008 16:52:00 GMT]]></title><description><![CDATA[<p>danke für eure Antworten.</p>
<p>Ich möchte eine zentrale Verwaltung für Events (im Sinne von Simulationsevents) programmieren. Dazu ist es erforderlich, dass verschiedene Entity_Klassen (Generator und Maschine) in die Event-Verwaltung schreiben können.<br />
Darum versuche ich das so zu lösen. Es ist mir klar, dass ich die Informationen per Zeiger, oder Wert übergeben könnte, das fände ich jedoch sehr unhandlich und wenig flexibel bei der Modellierung.<br />
Versteht ihr mein Problem?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1588035</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1588035</guid><dc:creator><![CDATA[d00j1]]></dc:creator><pubDate>Thu, 25 Sep 2008 16:52:00 GMT</pubDate></item><item><title><![CDATA[Reply to globaler zeiger on Thu, 25 Sep 2008 17:26:33 GMT]]></title><description><![CDATA[<p>Wenn diese Verwaltung zentral ist, dann benutze eine Singelton Klasse, die in einer statischen Funktion eine Referenz auf die einzige instanz zurückgibt:<br />
Das ist quasi global, aber schöner <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>
<p>Und das Event in die Verwaltung schreiben, würde ich als member von Der Verwaltung machen</p>
<pre><code class="language-cpp">class EventHandler
{
public:
  static EventHandler&amp; getInstance()
  {
    static EventHandler instance;
    return instance;
  }

  bool addEvent( const Event&amp; i_event);

private:
  EventHandler(); // privater contructor.
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1588053</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1588053</guid><dc:creator><![CDATA[vlad_tepesch]]></dc:creator><pubDate>Thu, 25 Sep 2008 17:26:33 GMT</pubDate></item><item><title><![CDATA[Reply to globaler zeiger on Thu, 25 Sep 2008 17:54:33 GMT]]></title><description><![CDATA[<p>aber wo ist mein speicher-objekt (array, liste)?<br />
verstehe ich nicht ganz? <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/1588068</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1588068</guid><dc:creator><![CDATA[d00j1]]></dc:creator><pubDate>Thu, 25 Sep 2008 17:54:33 GMT</pubDate></item><item><title><![CDATA[Reply to globaler zeiger on Thu, 25 Sep 2008 18:18:00 GMT]]></title><description><![CDATA[<p>d00j1 schrieb:</p>
<blockquote>
<p>aber wo ist mein speicher-objekt (array, liste)?</p>
</blockquote>
<p>Das müsstest du eben noch in die Klasse einbauen. Was vlad_tepesch gezeigt hat, war eher ein Grundgerüst, um Singletons zu verdeutlichen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1588081</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1588081</guid><dc:creator><![CDATA[Nexus]]></dc:creator><pubDate>Thu, 25 Sep 2008 18:18:00 GMT</pubDate></item><item><title><![CDATA[Reply to globaler zeiger on Thu, 25 Sep 2008 18:26:48 GMT]]></title><description><![CDATA[<p>okey - verstehe ist eine schöne Sache :).<br />
Folgendes habe ich versucht:</p>
<pre><code class="language-cpp">class Sim_Queue {
      private:
              static Sim_Queue *instance;
              Sim_Queue();
              int db;
      public:
             static Sim_Queue *getInstance()
             {
                    if (instance == NULL)
                    {
                       instance = new Sim_Queue();
                    }
                    return instance;
             }
             void set (int p)
             {
                    db = p;
             }
};

int main ()
{

 Sim_Queue* s = Sim_Queue.getInstance();

  return 0;
}
</code></pre>
<p>Leider gibt</p>
<pre><code class="language-cpp">Sim_Queue* s = Sim_Queue.getInstance();
</code></pre>
<p>einen Fehler?<br />
Und wenn es gehen würde. Könnte ich dann mit s.set(blub) db ändern?</p>
<p>vielen lieben 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/1588090</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1588090</guid><dc:creator><![CDATA[d00j1]]></dc:creator><pubDate>Thu, 25 Sep 2008 18:26:48 GMT</pubDate></item><item><title><![CDATA[Reply to globaler zeiger on Thu, 25 Sep 2008 18:30:15 GMT]]></title><description><![CDATA[<p>du statische member qualifiziert man über die klasse und den scopoperator:</p>
<pre><code class="language-cpp">int main ()
{

 Sim_Queue* s = Sim_Queue::getInstance();

  return 0;
}
</code></pre>
<p>cih würds dennoch mit der statischen lokalen variable machen, hat den vorteil, dass die abfrage entfällt.</p>
<p>Und ich würde statt einen pointer eine referenz zurückgeben, dass ist eher c++ stylish</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1588094</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1588094</guid><dc:creator><![CDATA[vlad_tepesch]]></dc:creator><pubDate>Thu, 25 Sep 2008 18:30:15 GMT</pubDate></item><item><title><![CDATA[Reply to globaler zeiger on Thu, 25 Sep 2008 19:59:23 GMT]]></title><description><![CDATA[<p>habs hinbekommen schön <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 />
wieso sind referenzen denn besser?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1588133</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1588133</guid><dc:creator><![CDATA[d00j1]]></dc:creator><pubDate>Thu, 25 Sep 2008 19:59:23 GMT</pubDate></item><item><title><![CDATA[Reply to globaler zeiger on Thu, 25 Sep 2008 20:18:40 GMT]]></title><description><![CDATA[<p>d00j1 schrieb:</p>
<blockquote>
<p>habs hinbekommen schön <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 />
wieso sind referenzen denn besser?</p>
</blockquote>
<p>1. Garantieren Referenzen das ein Objekt vorhanden ist (NULL ist unzulässig)<br />
2. Ist die Referenzsyntax meist angenehmer zu lesen</p>
<p>cu André</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1588140</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1588140</guid><dc:creator><![CDATA[asc]]></dc:creator><pubDate>Thu, 25 Sep 2008 20:18:40 GMT</pubDate></item><item><title><![CDATA[Reply to globaler zeiger on Thu, 25 Sep 2008 21:22:02 GMT]]></title><description><![CDATA[<p>Referenzen sind nicht grundsätzlich immer besser, sondern eben bequemer und sicherer. Es gibt Fälle, da kommt man um Zeiger nicht herum, aber wenn möglich (z.B. Parameterübergabe), sollte man auf Referenzen zurückgreifen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1588163</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1588163</guid><dc:creator><![CDATA[Nexus]]></dc:creator><pubDate>Thu, 25 Sep 2008 21:22:02 GMT</pubDate></item><item><title><![CDATA[Reply to globaler zeiger on Sat, 27 Sep 2008 15:21:45 GMT]]></title><description><![CDATA[<p>warum geht das:</p>
<pre><code class="language-cpp">class runTime
      {
             private:
                    static int rTime;
                    runTime();
             public:
             static int outTime()
             {
                    return rTime;
             }
      };
int runTime::rTime=0;
</code></pre>
<p>nicht? <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/1589114</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1589114</guid><dc:creator><![CDATA[d00j1]]></dc:creator><pubDate>Sat, 27 Sep 2008 15:21:45 GMT</pubDate></item><item><title><![CDATA[Reply to globaler zeiger on Sat, 27 Sep 2008 17:39:06 GMT]]></title><description><![CDATA[<p>Das frage ich mich auch (es sollte funktionieren).</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1589187</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1589187</guid><dc:creator><![CDATA[Nexus]]></dc:creator><pubDate>Sat, 27 Sep 2008 17:39:06 GMT</pubDate></item><item><title><![CDATA[Reply to globaler zeiger on Sat, 27 Sep 2008 17:42:49 GMT]]></title><description><![CDATA[<p>was heisst geht nicht?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1589191</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1589191</guid><dc:creator><![CDATA[theta]]></dc:creator><pubDate>Sat, 27 Sep 2008 17:42:49 GMT</pubDate></item><item><title><![CDATA[Reply to globaler zeiger on Sat, 27 Sep 2008 17:56:10 GMT]]></title><description><![CDATA[<p>naja Dev-C++ sagt:</p>
<p>multiple definition of `runTime::rTime'</p>
<p>?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1589194</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1589194</guid><dc:creator><![CDATA[d00j1]]></dc:creator><pubDate>Sat, 27 Sep 2008 17:56:10 GMT</pubDate></item><item><title><![CDATA[Reply to globaler zeiger on Sat, 27 Sep 2008 20:38:08 GMT]]></title><description><![CDATA[<p>mach die definition ( int runTime::rTime=0; ) in eine cpp datei.<br />
theta</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1589269</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1589269</guid><dc:creator><![CDATA[theta]]></dc:creator><pubDate>Sat, 27 Sep 2008 20:38:08 GMT</pubDate></item><item><title><![CDATA[Reply to globaler zeiger on Sun, 28 Sep 2008 12:30:57 GMT]]></title><description><![CDATA[<p>d00j1 schrieb:</p>
<blockquote>
<p>Dev-C++</p>
</blockquote>
<p>Ich würde dir raten, davon wegzukommen. Bloodshed Dev-C++ wird nicht mehr weiterentwickelt und hat auch einige Probleme. Gute Alternativen wären <em>Microsoft Visual C++ 2008 Express Edition</em> oder <em>Code::Blocks</em>.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1589624</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1589624</guid><dc:creator><![CDATA[Nexus]]></dc:creator><pubDate>Sun, 28 Sep 2008 12:30:57 GMT</pubDate></item><item><title><![CDATA[Reply to globaler zeiger on Sun, 28 Sep 2008 12:52:31 GMT]]></title><description><![CDATA[<p>kann man denn mit visual c++ ganz normal c++ entwickeln? ich meine ich hätte das mal getestet und er kannte zB cout&lt;&lt; nicht?</p>
<p>theta@ ich habe es nun über die main funktion geschrieben und jetzt scheint es zu gehen, wieso auch immer?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1589638</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1589638</guid><dc:creator><![CDATA[d00j1]]></dc:creator><pubDate>Sun, 28 Sep 2008 12:52:31 GMT</pubDate></item><item><title><![CDATA[Reply to globaler zeiger on Sun, 28 Sep 2008 13:13:32 GMT]]></title><description><![CDATA[<p>d00j1 schrieb:</p>
<blockquote>
<p>kann man denn mit visual c++ ganz normal c++ entwickeln?</p>
</blockquote>
<p><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>Natürlich kann man das. Wenn man selber Fehler macht, sodass <code>cout</code> nicht gefunden wird, kann man nicht die IDE beschuldigen. Glaub mir, mit MSVC++ kann man um einiges besser und effizienter programmieren als mit Dev-C++.</p>
<p>d00j1 schrieb:</p>
<blockquote>
<p>theta@ ich habe es nun über die main funktion geschrieben und jetzt scheint es zu gehen, wieso auch immer?</p>
</blockquote>
<p>Wenn der Header mehrere Male eingebunden wird, hast du ein mehrfach definiertes Symbol, mit dem der Linker dann Probleme bekommt. Deshalb Deklarationen in die Header, Definitionen in Implementationsdateien.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1589648</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1589648</guid><dc:creator><![CDATA[Nexus]]></dc:creator><pubDate>Sun, 28 Sep 2008 13:13:32 GMT</pubDate></item><item><title><![CDATA[Reply to globaler zeiger on Sun, 28 Sep 2008 16:46:45 GMT]]></title><description><![CDATA[<p>wie lässt sich dies den einfach und konfortabel realisieren?<br />
gibt es da irgendwelche standarteinstellungen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1589754</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1589754</guid><dc:creator><![CDATA[d00j1]]></dc:creator><pubDate>Sun, 28 Sep 2008 16:46:45 GMT</pubDate></item><item><title><![CDATA[Reply to globaler zeiger on Sun, 28 Sep 2008 17:34:35 GMT]]></title><description><![CDATA[<p>okey, war wohl eine blöde frage.<br />
kann iostream einfach mit &lt;iostream&gt; einbinden und cout mit std::cout benutzen.<br />
ist denn std eine singleton-klasse?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1589782</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1589782</guid><dc:creator><![CDATA[d00j1]]></dc:creator><pubDate>Sun, 28 Sep 2008 17:34:35 GMT</pubDate></item><item><title><![CDATA[Reply to globaler zeiger on Sun, 28 Sep 2008 17:39:06 GMT]]></title><description><![CDATA[<p>d00j1 schrieb:</p>
<blockquote>
<p>ist denn std eine singleton-klasse?</p>
</blockquote>
<p>Nein, sondern ein Namensraum. Namensräume werden auch mittels Scope-Operator :: spezifiziert.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1589785</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1589785</guid><dc:creator><![CDATA[Nexus]]></dc:creator><pubDate>Sun, 28 Sep 2008 17:39:06 GMT</pubDate></item><item><title><![CDATA[Reply to globaler zeiger on Sun, 28 Sep 2008 19:43:36 GMT]]></title><description><![CDATA[<p>schön - namespaces sind auch eine ganz praktische sache <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>
<p>das hier ein wirklich schönes forum.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1589858</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1589858</guid><dc:creator><![CDATA[d00j1]]></dc:creator><pubDate>Sun, 28 Sep 2008 19:43:36 GMT</pubDate></item></channel></rss>