class Foo
{
public:
static void TestFoo(void);
private:
static int i;
}
static int i = 0; // error!
static void TestFoo(void) {} // error!
int i = 0; // OK!
void TestFoo(void){} // OK!
类中带有static标识符的函数和变量,在类体外定义时不能带有static。
当类中声明时,static的含义是该函数或变量是类函数或变量。
若在类体外定义函数或变量带有static时,static的含义是该变量或成员函数的可见范围是整个文件。
两种情况下的static含义不同,请注意
阅读(726) | 评论(0) | 转发(0) |