c++++ 友元机制允许非成员函数或类访问其他类的私有或保护成员,以实现以下目的:允许非成员函数访问私有成员允许成员函数访问其他类的私有成员允许类成员函数访问另一个类的私有成员
C++ 函数的友元机制详解
友元机制是一种允许函数或类访问其他类或函数的私有或保护成员的特征。在 C++ 中,友元机制可以实现以下目的:
语法
立即学习“C++免费学习笔记(深入)”;
全局函数友元声明:
friend 返回值类型 函数名(参数列表);
类友元声明:
friend class 类名;
类成员函数友元声明:
friend 返回值类型 类名::成员函数名(参数列表);
实战案例:
问题:设计一个 Point 类,它有私有成员 x 和 y,并且有一个打印所有私有成员的 print() 函数。现在,我们想要一个额外的 printInfo() 函数,它可以访问 Point 类的私有成员并打印它们。
实现:
// Point 类 class Point { private: int x; int y; public: // 友元函数,可以访问 Point 类的私有成员 friend void printInfo(Point& point); // Point 类的成员函数 void print() { std::cout << "x: " << x << ", y: " << y << std::endl; } }; // 全局友元函数,可以访问 Point 类的私有成员 void printInfo(Point& point) { std::cout << "x: " << point.x << ", y: " << point.y << std::endl; } int main() { Point point{10, 20}; point.print(); // 输出:x: 10, y: 20 printInfo(point); // 输出:x: 10, y: 20 return 0; }
以上就是C++ 函数的友元机制详解的详细内容,更多请关注php中文网其它相关文章!
c++怎么学习?c++怎么入门?c++在哪学?c++怎么学才快?不用担心,这里为大家提供了c++速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号