首页 > 代码库 > 友元函数 C++
友元函数 C++
#include<iostream> #include<vector> using namespace std; class Text{ public: Text():a(1){} private: int a; void display(){ cout<< "hello world"<<endl;} friend void f(Text t); }; void f(Text t)///可以用引用,也可以不用,不用前面加类,要有类参数,不然鬼才知道他要哪一个 { cout<<t.a<<endl; t.a = 2;///友元可以改变值 cout<<t.a<<endl; t.display();///有缘可以引用函数 } void main() { Text t; f(t); }
1.友元可以访问类的私有成员。
2.只能出现在类定义内部,友元声明可以在类中的任何地方,一般放在类定义的开始或结尾。
3.友元可以是普通的非成员函数,或前面定义的其他类的成员函数,或整个类。
4.类必须将重载函数集中每一个希望设为友元的函数都声明为友元。
5.友元关系不能继承,基类的友元对派生类的成员没有特殊的访问权限。如果基类被授予友元关系,则只有基类具有特殊的访问权限。该基类的派生类不能访问授予友元关系的类。
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。