【发布时间】:2016-07-04 09:12:32
【问题描述】:
如果我尝试执行下面的程序,那么它会给出错误。
#include <iostream>
using namespace std;
class book {
static int i;
public :
static void set_data(void) // static member function
{
i++;
cout<<i<<endl;
}
};
int book :: i = 0;
int main()
{
cout<<book :: set_data() << endl; // trying to display the static member function data here but it is giving error
}
如果我们要使用静态成员函数,那么我们需要返回静态参数吗?
【问题讨论】:
-
寻求调试帮助的问题('为什么这段代码不起作用?')必须包括所需的行为、特定的问题或错误以及重现它所需的最短代码在问题本身。没有明确的问题陈述的问题对其他读者没有用处。请参阅:How to create a Minimal, Complete, and Verifiable example。
-
您试图打印出
set_data()的返回值void,这没有任何意义。 -
不是问题,但不要使用
std::endl,除非您需要它的额外功能。'\n'结束一行。
标签: c++ static-methods