Hallo,
nun eine etwas seltsame Frage zu einem noch seltsameren Konstrukt:
Ich habe eine Klasse, nennen wir sie A entworfen. Diese Klasse soll einen statischen Zeiger auf eine Instanz einer Klasse mit dem Namen B enthalten. Ich habe dies so gelöst
<pre>
class A
{
static B *pB;
}
</pre>
Nun wollte ich eine getB()-Funktion, die schlichweb nur den Zeiger auf pB nach aussen liefern soll, für diese Klasse schreiben, die sieht so aus:
<pre>
static B* A::getB()
{
return pB;
}
</pre>
Sobald die return-Anweisung im Programmcode steht maeckert der Compiler, und zwar mit folgender Meldung:
<pre>
error LNK2001: Nichtaufgeloestes externes Symbol "public: static class B * A:B" (?pB@A@@2PAV1@A)
</pre>
Weiss jemand Rat ?
Danke im Voraus
Bernd
nun eine etwas seltsame Frage zu einem noch seltsameren Konstrukt:
Ich habe eine Klasse, nennen wir sie A entworfen. Diese Klasse soll einen statischen Zeiger auf eine Instanz einer Klasse mit dem Namen B enthalten. Ich habe dies so gelöst
<pre>
class A
{
static B *pB;
}
</pre>
Nun wollte ich eine getB()-Funktion, die schlichweb nur den Zeiger auf pB nach aussen liefern soll, für diese Klasse schreiben, die sieht so aus:
<pre>
static B* A::getB()
{
return pB;
}
</pre>
Sobald die return-Anweisung im Programmcode steht maeckert der Compiler, und zwar mit folgender Meldung:
<pre>
error LNK2001: Nichtaufgeloestes externes Symbol "public: static class B * A:B" (?pB@A@@2PAV1@A)
</pre>
Weiss jemand Rat ?
Danke im Voraus
Bernd
Comment