从同一个类的构造函数中调用静态函数

时间:2013-07-17 12:07:46

标签: c++

我们可以从同一个类的构造函数中调用静态函数。

class a{
    static void fun();
    a() {fun();}
};

链接代码时出错。我正在使用Visual Studio C ++,2010。

2 个答案:

答案 0 :(得分:3)

是的,你可以 - 只要你为静态函数提供函数定义。

答案 1 :(得分:3)

我真的不明白这个问题。

如果您提供Billz和Ogni42所说的功能定义,它将起作用。

以下代码编译并运行:

#include <iostream>

class a {
public:
  a() { fun(); }

private:
  static void fun();
};

void a::fun() {
  std::cout << "BOAP" << std::endl;
}

int main() {
  a foo;
  return 0;
}