C++中static修改类函数
时间: 2023-10-27 10:07:12 浏览: 180
在C++中,使用static关键字可以修改类函数,使其成为静态成员函数。静态成员函数与普通成员函数有一些不同之处:
1. 静态成员函数不依赖于任何对象,可以直接通过类名调用,而不需要通过对象实例调用。
2. 静态成员函数不能访问非静态成员变量或非静态成员函数,因为它们没有隐式的this指针。
3. 静态成员函数可以访问类的静态成员变量和静态成员函数。
下面是一个示例代码,展示了如何使用static关键字修改类函数:
```cpp
#include <iostream>
class MyClass {
public:
static void staticFunction() {
std::cout << "This is a static member function." << std::endl;
}
void nonStaticFunction() {
std::cout << "This is a non-static member function." << std::endl;
}
};
int main() {
// 调用静态成员函数,不需要创建对象实例
MyClass::staticFunction();
// 创建对象实例,调用非静态成员函数
MyClass obj;
obj.nonStaticFunction();
return 0;
}
```
运行上述代码将输出:
```
This is a static member function.
This is a non-static member function.
```
可以看到,静态成员函数可以直接通过类名调用,而非静态成员函数需要通过对象实例调用。
阅读全文