07/04/10 9:25
robrock80
Salve a tutti. Dato le seguenti classi definite in un file header.
Qualcuno riesce a capire perchè se istanzio la classe Server il compilatore compila e invece se istanzio la classe MyServer mi dà il seguente errore?
src\Main.o: In function `ZN7ServiceIPvmE4stopEv':
/Workspaces/Eclipse/C-C++/MY-SHARED-LIBRARY/src/….text$_ZN8MyServerD1Ev[MyServer::~MyServer()]+0xb): undefined reference to `vtable for MyServer'
/Workspaces/Eclipse/C-C++/MY-SHARED-LIBRARY/src/….text$_ZN8MyServerC1Ejj[MyServer::MyServer(unsigned int, unsigned int)]+0x24): undefined
class Server : public MicrosoftWindowsService { public: static char* NAME_PATTERN; Server(unsigned int port = 80, unsigned int maxCl = 1); virtual ~Server(); SOCKET getSocket(); virtual void doService(); virtual void endService(); int getListenPort() const{ return listenPort; } void init(); protected: virtual void createSocketManagers(int); private: int listenPort; SOCKET serverSocket; void deleteSocketManagers(); void setToFalseSocketManagersIsListeningAndIsClientConnected(); void startSocketManagers(); void stopSocketManagers(); void stopSocketManagersAndWaitUntilAllAreShutedDown(); void waitUntilAllSocketManagersAreListening(); }; class MyServer: public Server { public: MyServer(unsigned int port, unsigned int maxCl) : Server(port, maxCl){}; virtual ~MyServer(){}; protected: virtual void createSocketManagers(int); };
Qualcuno riesce a capire perchè se istanzio la classe Server il compilatore compila e invece se istanzio la classe MyServer mi dà il seguente errore?
src\Main.o: In function `ZN7ServiceIPvmE4stopEv':
/Workspaces/Eclipse/C-C++/MY-SHARED-LIBRARY/src/….text$_ZN8MyServerD1Ev[MyServer::~MyServer()]+0xb): undefined reference to `vtable for MyServer'
/Workspaces/Eclipse/C-C++/MY-SHARED-LIBRARY/src/….text$_ZN8MyServerC1Ejj[MyServer::MyServer(unsigned int, unsigned int)]+0x24): undefined
aaa