C++ 静态函数定义语法及用法
类静函数
C++中,类的成员函数可以通过static修饰之后,就可以成为该类的静态函数,当然了,静态函数本身也是类的静态成员,与其它的大多数的类的静态成员一样,类的静态函数只属于类,而不是仅属于某一个特定的类对象。C++的静态函数的定义语法如下:
static type functionName(type);
提示:如果类的静态函数只是在类的内部声明,那么要在类的外部定义,则可以通过范围解析运算符::来定义,具体可参考下方的实例代码。
类静态函数的作用及调用方法
C++中的静态函数可以在不需要类的实例对象的条件下即可通过类的名称进行调用。其调用的语法如下:
className::function(args)
类静态函数的注意点
- 类的静态函数只能访问类中的静态数据成员,而不能调用类中其它的静态函数或其它的类的外部的函数;
- 类的静态函数不可访问类中的非静态成员,包括this指针;
类静态函数实例代码
#include <iostream>
using namespace std;
// 定义一个Fruit类,并将类别category声明为static静态成员
class Fruit{
public:
string name;
static int price;
Fruit(string n){
name = n;
};
static int returnPrice();
};
// 定义静态函数
int Fruit::returnPrice(){
return Fruit::price;
}
// 为静态成员赋值
int Fruit::price = 1;
int main(){
Fruit apple("香蕉");
// 调用静态函数
int p = Fruit::returnPrice();
cout << p << endl;
return 0;
}
代码编译运行后,得到输出:
1
免责声明:内容仅供参考,不保证正确性。