标题c ++中的类定义

man*_*ans 0 c++ linker visual-c++

我有这个代码:

#include <time.h> 
class ElapsedTime
{   
    time_t _startTime;
public:
    ElapsedTime(void){
        time(&_startTime);  
    }

    double MiliSecond()
    {
        time_t endTime;
        time(&endTime);
        return difftime(_startTime,endTime) * 1000;
    }

    ~ElapsedTime(void);
};
Run Code Online (Sandbox Code Playgroud)

我在我的c ++代码中使用它.它编译但在链接期间生成错误,因为链接器说它无法找到elapsetime定义.

如何在H文件中完全定义类?对于这个简单的类,我不希望有.h和.cpp.

And*_*owl 7

您忘了为析构函数提供定义:

~ElapsedTime(void) { }
//                 ^^^
Run Code Online (Sandbox Code Playgroud)

但请注意,在这种情况下,您不需要显式提供析构函数:编译器将为您隐式生成析构函数.简单地省略它.