C ++静态库和构造函数

时间:2014-02-15 14:46:35

标签: c++ static-libraries

我正在关注http://msdn.microsoft.com/en-us/library/ms235627.aspx创建一个静态库,并将其用于位于同一解决方案中的其他项目中。它适用于静态函数;但是,当我尝试创建构造函数时,它会为我提供error LNK2019: unresolved symbolerror LNK1120。我不允许在静态库中创建构造函数??

Loogger.h

namespace logger
{
    class Logger
    {
    public:
        Logger(int i);
        ~Logger();
    }
}

Logger.cpp

namespace logger
{  
    Logger::Logger(int i)
    {
        clog << "In the constructor" << i << endl;
    }
}

Main.cpp :(在一个单独的项目中)

int main(void)
{
    Logger log(3);
    return 0;
}

错误: enter image description here

1 个答案:

答案 0 :(得分:1)

您错过了为Logger类定义析构函数:

Logger::~Logger()
{
}

省略声明(编译器创建默认版本),或者如上所示。