Unresolved external symbol (singleton class C++) -


i looked answers in stackoverflow type of problem, none of helping me out. this question describes how resolve error, , should provide definition , not declaration. i've done that, i'm still getting following error:

error 13 error lnk2019: unresolved external symbol "private: __thiscall networkmanager::networkmanager(void)" (??0networkmanager@@aae@xz) referenced in function "public: static class networkmanager * __cdecl networkmanager::instance(void)" (?instance@networkmanager@@sapav1@xz) c:\users\hidden\documents\agk projects\c++ libraries\apps\template_windows_vs2013\networkmanager.obj template

here's code:

networkmanager.h

#ifndef _h_networkmanager_ #define _h_networkmanager_  #include<iostream> #include<vector>  class networkmanager { private:     networkmanager();     static networkmanager * netmanager; public:     int networkid;     static networkmanager * instance();     int hostnetwork(std::string netname, std::string hostname, int port);     int joinnetwork(std::string netname, std::string clientname);     bool isnetworkactive(int netid); };  #endif 

networkmanager.cpp

#include<iostream> #include "networkmanager.h" #include "template.h"  networkmanager * networkmanager::netmanager = null;  networkmanager * networkmanager::instance() {     if (!netmanager)         netmanager = new networkmanager;      return netmanager; }  int networkmanager::hostnetwork(std::string netname, std::string hostname, int port) {     int networdid__;     const char * netname__ = netname.c_str();     const char * hostname__ = hostname.c_str();     networdid__ = agk::hostnetwork(netname__, hostname__, port);     return networdid__; }  int networkmanager::joinnetwork(std::string netname, std::string clientname) {     int networdid__;     const char * netname__ = netname.c_str();     const char * clientname__ = clientname.c_str();     networdid__ = agk::joinnetwork(netname__, clientname__);     return networdid__; }  bool networkmanager::isnetworkactive(int netid) {     switch (agk::isnetworkactive(netid))     {     case 0: return false; break;     case 1: return true;  break;     } } 

you declared networkmanager::networkmanager() in header file there no implementation of in source file.


Comments

Popular posts from this blog

c# - Validate object ID from GET to POST -

node.js - Custom Model Validator SailsJS -

php - Find a regex to take part of Email -