静态函数是类方法,只访问静态成员而不接收 this 指针;友元函数不属于类,可以访问所有成员并接收 this 指针。
C++ 中静态函数与友元函数的区别
静态函数
- 属于类但并不属于任何特定的对象,也可以称为类方法。
- 使用 static 关键字声明。
- 只可以访问类的静态成员。
- 不会接收 this 指针。
友元函数
- 不属于任何类。
- 使用 friend 关键字声明。
- 可以访问类的所有成员,包括私有成员。
- 可以接收 this 指针。
表格总结
特征 | 静态函数 | 友元函数 |
---|---|---|
类成员资格 | 是 | 不是 |
访问权限 | 类静态成员 | 类所有成员 |
this 指针 | 不接收 | 可以接收 |
声明方式 | static 关键字 | friend 关键字 |
实战案例
静态函数示例: 计算圆的面积
class Circle { public: static double calculateArea(double radius) { return 3.14 * radius * radius; } }; int main() { double radius = 5.0; double area = Circle::calculateArea(radius); cout << "圆的面积:" << area << endl; return 0; }
登录后复制
友元函数示例: 打印私有成员的值
class Student { private: int age; public: friend void printAge(Student& student); }; void printAge(Student& student) { cout << "年龄:" << student.age << endl; } int main() { Student student; student.age = 20; printAge(student); return 0; }
登录后复制
以上就是C++ 静态函数与友元函数有什么区别?的详细内容,更多请关注叮当号网其它相关文章!
文章来自互联网,只做分享使用。发布者:叮当号,转转请注明出处:https://www.dingdanghao.com/article/361584.html