Oppure

Loading
07/04/10 9:25
robrock80
Salve a tutti. Dato le seguenti classi definite in un file header.

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