类内静态变量的问题
我声明了一个类内静态变量
class CTestMaster
{
public: void getdata();
private: static void* z_handleone;
}
void getdata()
{
harddriver(void *z_handleone)
}
这样使用 出现LNK2001错误,为何
[解决办法]
class CTestMaster
{
public: void getdata();
private: static void* z_handleone;
}
void getdata()//第一LZ这里不对,应该使用void CTestMaster::getdata();
{
harddriver(void *z_handleone)//没有看到harddriver的定义
}
[解决办法]
在.c文件中还要加上定义:
void* CTestMaster::z_handleone = NULL;
[解决办法]
static void* z_handleone;
这里只是声明,并没有定义