实现类的静态方法

时间:2014-10-16 22:00:30

标签: c++11 static-methods

我有一个标题:

class a
{
 public:
  a();
  static int Zero();
  void SimpleEx();
}

及其cpp文件:

a() { }
static int a::Zero() {return 0;}
void SimpleEx() { cout << a::Zero(); }

我在编译时遇到错误:

  

错误1错误LNK2019:未解析的外部符号“public:static class a __cdecl a :: Zero(void)”(?Zero @ a @@ SA?AV1 @ XZ)在函数“public:class a __thiscall a: :SimpleEx(void)“(?SimpleEx @ a @@ QAE?AV1 @ XZ)

如何解决这个问题?

1 个答案:

答案 0 :(得分:1)

采取&#34;静态&#34;超出定义:

声明:

class a
{
    static int Zero();
}

定义:

int a::Zero()
{
    return 0;
}