// C++友元函数示例
#include <iostream>
using namespace std;
class Complex {
private:
double real;
double imag;
public:
Complex(double r = 0, double i = 0) : real(r), imag(i) {}
// 声明友元函数
friend Complex add(const Complex& c1, const Complex& c2);
};
// 定义友元函数
Complex add(const Complex& c1, const Complex& c2) {
return Complex(c1.real + c2.real, c1.imag + c2.imag);
}
int main() {
Complex c1(3.5, 4.5);
Complex c2(2.5, 3.5);
Complex c3 = add(c1, c2);
cout << "c1 + c2 = " << c3.real << " + " << c3.imag << "i" << endl;
return 0;
}
类声明:
Complex 类有两个私有成员变量 real 和 imag,分别表示复数的实部和虚部。Complex(double r = 0, double i = 0) 用于初始化复数对象。友元函数声明:
Complex 类中,使用 friend 关键字声明了一个名为 add 的友元函数。友元函数可以访问类的私有成员。友元函数定义:
add 函数接收两个 Complex 对象作为参数,并返回一个新的 Complex 对象,该对象是两个输入对象的和。主函数:
Complex 对象 c1 和 c2,并调用 add 函数计算它们的和,结果存储在 c3 中。c3 的值。通过这种方式,友元函数可以直接访问类的私有成员,从而实现某些特殊功能。
上一篇:c++sort函数
下一篇:c++基础语法
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站