Laravel  
laravel
文档
数据库
架构
入门
php技术
    
Laravelphp
laravel / php / java / vue / mysql / linux / python / javascript / html / css / c++ / c#

c++友元函数

作者:索伦之刃   发布日期:2025-11-25   浏览:72

// 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;
}

解释说明:

  1. 类声明

    • Complex 类有两个私有成员变量 realimag,分别表示复数的实部和虚部。
    • 构造函数 Complex(double r = 0, double i = 0) 用于初始化复数对象。
  2. 友元函数声明

    • Complex 类中,使用 friend 关键字声明了一个名为 add 的友元函数。友元函数可以访问类的私有成员。
  3. 友元函数定义

    • add 函数接收两个 Complex 对象作为参数,并返回一个新的 Complex 对象,该对象是两个输入对象的和。
  4. 主函数

    • 创建了两个 Complex 对象 c1c2,并调用 add 函数计算它们的和,结果存储在 c3 中。
    • 最后输出 c3 的值。

通过这种方式,友元函数可以直接访问类的私有成员,从而实现某些特殊功能。

上一篇:c++sort函数

下一篇:c++基础语法

大家都在看

c++闭包

c++单引号和双引号的区别

c++ 注释

c++如何判断素数

c++格式化字符串

c++ orm框架

c++ random函数用法

队列c++

c++freopen怎么用

进制转换c++代码

Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3

Laravel 中文站