我声明了一个类内静态变量
class CTestMaster
{
public:  void getdata();
private: static void* z_handleone;
}
void getdata()
{
    harddriver(void *z_handleone)
}
这样使用 出现LNK2001错误,为何

解决方案 »

  1.   

    class CTestMaster
    {
    public:  void getdata();
    private: static void* z_handleone;
    }
    void getdata()//第一LZ这里不对,应该使用void CTestMaster::getdata();
    {
        harddriver(void *z_handleone)//没有看到harddriver的定义
    }
      

  2.   

    在.c文件中还要加上定义:
    void* CTestMaster::z_handleone = NULL;
      

  3.   

    static void* z_handleone;
    这里只是声明,并没有定义