<?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[Pointerproblem]]></title><description><![CDATA[<p>Hallo.</p>
<p>Ich komme hier nicht weiter. Ich bin wohl ein bisschen reingerostet, nachdem ich lange Zeit kein C++ mehr programmiert habe.</p>
<p>Ich habe einen Konstruktor, an dem ich die int und char** der main-Methode übergeben will. Bisher habe ich das so versucht:</p>
<pre><code class="language-cpp">extern Gui gui;

int main(int argc, char** args)
{
	gui(argc, args);
	gui.start();
}
</code></pre>
<p>Und in der Klasse:</p>
<pre><code class="language-cpp">Gui::Gui(int argc, char** args)
{
	glutInit(argc, args);
}
</code></pre>
<p>g++ spuckt da folgende Fehlermeldung aus:</p>
<blockquote>
<p>nov.cpp: In function <code>int main(int, char**)': nov.cpp:13: error: no match for call to</code>(Gui) (int&amp;, char**&amp;)'</p>
</blockquote>
<p>Ich hab schon alles mögliche ausprobiert, aber ich kriege es einfach nicht hin. Ich hoffe, es kann mir irgendwer eben sagen, wie es geht.</p>
<p>Danke im Voraus.<br />
Konstantin</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/127864/pointerproblem</link><generator>RSS for Node</generator><lastBuildDate>Tue, 25 Aug 2026 07:24:16 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/127864.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 28 Nov 2005 10:19:11 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Pointerproblem on Mon, 28 Nov 2005 10:19:11 GMT]]></title><description><![CDATA[<p>Hallo.</p>
<p>Ich komme hier nicht weiter. Ich bin wohl ein bisschen reingerostet, nachdem ich lange Zeit kein C++ mehr programmiert habe.</p>
<p>Ich habe einen Konstruktor, an dem ich die int und char** der main-Methode übergeben will. Bisher habe ich das so versucht:</p>
<pre><code class="language-cpp">extern Gui gui;

int main(int argc, char** args)
{
	gui(argc, args);
	gui.start();
}
</code></pre>
<p>Und in der Klasse:</p>
<pre><code class="language-cpp">Gui::Gui(int argc, char** args)
{
	glutInit(argc, args);
}
</code></pre>
<p>g++ spuckt da folgende Fehlermeldung aus:</p>
<blockquote>
<p>nov.cpp: In function <code>int main(int, char**)': nov.cpp:13: error: no match for call to</code>(Gui) (int&amp;, char**&amp;)'</p>
</blockquote>
<p>Ich hab schon alles mögliche ausprobiert, aber ich kriege es einfach nicht hin. Ich hoffe, es kann mir irgendwer eben sagen, wie es geht.</p>
<p>Danke im Voraus.<br />
Konstantin</p>
]]></description><link>https://www.c-plusplus.net/forum/post/928859</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/928859</guid><dc:creator><![CDATA[Konstantin]]></dc:creator><pubDate>Mon, 28 Nov 2005 10:19:11 GMT</pubDate></item><item><title><![CDATA[Reply to Pointerproblem on Mon, 28 Nov 2005 10:26:59 GMT]]></title><description><![CDATA[<p>Der Konstruktor der globalen Variablen muß irgendwo global eingebaut werden (bei der Deklartion), ist für dich also nicht verwendbar - an der Stelle erwartet der Compiler bestenfalls einen GUI::operator(), den er aufrufen will.</p>
<p>Die beste Lösung wäre es da, den ganzen Code aus dem Konstruktor in eine Init()-Methode zu verlagern:</p>
<pre><code class="language-cpp">class Gui
{
  bool is_ok;
public:
  Gui():is_ok(false){}
  GUI(int c,char**v):is_ok(true)
  { glutInit(c,v); }
  void Init(int c,char**v)
  {
    glutInit(c,v);
    is_ok=true;
  }
  //...
}

extern Gui gui;

int main(int argc,char**argv)
{
  gui.Init(argc,argv);
  gui.Start();
}
</code></pre>
<p>Alternativ kannst du die Gui auch als lokale Variable in main() anlegen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/928863</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/928863</guid><dc:creator><![CDATA[CStoll (off)]]></dc:creator><pubDate>Mon, 28 Nov 2005 10:26:59 GMT</pubDate></item></channel></rss>