unresolved external....
-
hallo leute..
ich bin etwas ratlos. ich bekomme mehrere error linkfehlermeldungen wie
[Link Fehler] Unresolved external 'ClassA::OnDestroy()' referenced from <pfad>\main.obj
class classA:
{
public:
void OnDestroy();
~GUI_Element()
{
OnDestroy();
}
};mal vereinfacht.... da steht natürlich noch mehr .. aber wieso kommt dieser fehler?
der selbe fehler bei dieser zeile
virtual void AddEntry(AnsiString text);wenn ich das "virtual" wegnehme .. verschwindet der fehler.
ich versuche grad das vc++ projekt in cbuilder einzuarbeiten und dort hatte der quelltext 0warnings geschweige denn errors .. was soll das jetzt? ist der cbuilder zu dumm oder peil ich nur was nicht?
-
Über die VC++ Projekt Konvertierung erzeugtes Projekt ???
-
das problem hatt ich mit mysql++ auch grad ... du musst einfach mit implib alle .lib dateien aus VC++ neu erstellen (einfach in der dos-prompt implib name.lib name.dll eingeben) und dann sollte das gehen ...
evtl. must du auch mti impdef (gleiche syntax) alle .def's neu erstellen
mfg
-
nee... mal von vorne neues projekt angefangen
ich mach 2 classen
// HPP
class classA { private: public: classA(); ~classA(); };// CPP
classA::classA() { } classA::~classA() { }//#######
class classB : public classA { private: AnsiString e_text; public: void SetText(AnsiString text); AnsiString GetText(); classB(); ~classB(); };// CPP
void classB::SetText(AnisString text) { l_text=text; } AnisString classB::GetText() { return l_text; } classB::classB() { } classB::~classB() { }compiliere und KEINE fehler ...
so jetzt binde ich in Unit1.cpp die classA header ein
classB *testc = new classB();
testc->SetText("huhu");
Caption=testc->GetText();
delete testc;wusch und schon kommt das:
[Linker Fehler] Unresolved external 'classB::~classB()' referenced from ...\MAIN.OBJ
[Linker Fehler] Unresolved external 'classB::classB()' referenced from ...\MAIN.OBJ
[Linker Fehler] Unresolved external 'classB::SetText(System::AnsiString)' referenced from ...\MAIN.OBJ
[Linker Fehler] Unresolved external 'classB::GetText()' referenced from ...\MAIN.OBJich verstehe nur nicht ganz was das werden soll
#include "classB.h" habe ich dochin vc++ gibts dahingehend keine probleme .. ich weiss erlich net was ich wo anders machen soll.
-
ich sehe grad das eine classA.obj existiert, aber keine classB.obj
wieso gibt es eine classA.oj aber keine classB.obj und wie bekomme ich die fehlnde?
*doof wohl bin*
-
Hi,
hast du die classB.cpp ins Projekt hinzugefügt?MfG
Alexander Sulfrian
-
ok das war stein des anstosses ... leicht kompliziert habens das gemacht... danke