Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (ANSI-Standard) » Instanz Problem

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
21.07.2003, 09:00 Uhr
~Yvonne
Gast


Guten Morgen,

wäree schön wenn sich jemand in mein Problem eindenken könnte und mir postet, weil ich momentan absolut nicht weiterkomme...

Ich habe eine Klasse in einer Header-Datei definiert und verschiedene Implementierungen der Klasse, d.h. jede Implementierung befindet sich in einer *.cpp Datei, und überschreibt sämtliche Methoden der in der Header-Datei definierten Klasse.
Jetzt möchte ich Instanzen der Klasse erzeugen, aber WIE kann ich beim Konstruktoraufruf Einfluss darauf nehmen, WELCHE Implementierung verwendet wird ?
Vielen Dank,

Yvonne
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
21.07.2003, 10:24 Uhr
ao

(Operator)


Versteh ich das richtig, daß du so was willst?


C++:
// File: blubb.h
class CBlubb
{
public:
    CBlubb() {};
    ~CBlubb() {};

    void Blubber(int nBla);
};




C++:
// File: blubb_1.cpp
void CBlubb::Blubber (int nBla)
{
    cout << "1. Implementierung";
}




C++:
// File: blubb_2.cpp
void CBlubb::Blubber (int nBla)
{
    cout << "2. Implementierung";
}




C++:
// File: blubb_main.cpp
int main (void)
{
    CBlubb blubb; // irgendwie die 1. oder 2. Implementierung auswaehlen
    return 0;



Das geht so nicht. Das Programm kann nicht gelinkt werden, weil das Symbol "void CBlubb::Blubber(int)" mehrfach definiert ist.

Die Lösung ist vermutlich eine Basisklasse mit zwei Ableitungen, aber bevor ich weiter irgendwelche Blubb-Klassen bastele, zeig lieber etwas von deinem Sourcecode. Direkt am lebendigen Objekt kann man viel besser helfen.

ao
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
21.07.2003, 12:26 Uhr
~Yvonne
Gast


Vielen Dank für deine Hilfe...

habe das Problem allerdings bereits gelöst, ich hatte bisher lediglich einen grundlegenden Denkfehler gemacht...im Prinzip ist die Lösung wie du sagtest die Erstellung einer Basisklasse und verschiedener Implementierungen...habe dann noch einen kleinen Umweg drinnen, aber egal...Hauprsachge es funzt !

Vielen Dank,

Yvonne
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ C / C++ (ANSI-Standard) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: