在C++中,static函数有两种用法:
- 在类的成员函数中使用static关键字:在类的成员函数中使用static关键字可以将该函数声明为静态成员函数。静态成员函数不依赖于任何特定的对象,可以直接通过类名或对象名来调用,而不需要创建类的实例。静态成员函数不能访问类的非静态成员变量,也不能使用this指针。
class MyClass { public: static void staticFunc() { // 静态成员函数的实现 } }; int main() { MyClass::staticFunc(); // 使用类名调用静态成员函数 return 0; }
- 在全局函数中使用static关键字:在全局函数中使用static关键字可以将该函数声明为静态函数,限制函数的作用域只在当前文件内有效,避免与其他文件中同名的函数发生冲突。
static void staticFunc() { // 静态函数的实现 } int main() { staticFunc(); // 调用静态函数 return 0; }