社区
C++ 语言
帖子详情
类对象能不能调用友元函数(友元函数重载了[]操作符)??
lovesi3344
2009-11-13 01:11:28
类对象能不能调用友元函数(友元函数重载了[]操作符?[]能不能由友元函数重载)??
const char&string::operator[](int i)const
{
return str[i];//这行怎么写?
}
string shit("fuck");
shit[0]=‘c’;
cout<<shit<<endl;
...全文
211
5
打赏
收藏
类对象能不能调用友元函数(友元函数重载了[]操作符)??
类对象能不能调用友元函数(友元函数重载了[]操作符?[]能不能由友元函数重载)?? const char&string::operator[](int i)const { return str[i];//这行怎么写? } string shit("fuck"); shit[0]=‘c’; cout<<shit<<endl;
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
buyan2009
2009-11-13
打赏
举报
回复
友元函数不是一个类的成员函数,但可以像成员函数一样访问该类的所有成员。
一个函数要成为一个类的友元函数,需要在类的定义中声明该函数。
建议把友元声明放在类体的开始位置。
所以说
[Quote=引用 3 楼 hqin6 的回复:]
C/C++ code
肯定不行,主动和被动的关系都不对!
[/Quote]
即友元函数可以访问类的成员,类的对象不能调用友元函数
forster
2009-11-13
打赏
举报
回复
[Quote=引用 3 楼 hqin6 的回复:]
C/C++ code
肯定不行,主动和被动的关系都不对!
[/Quote]
友元是对方对自己具备的特权。。
你的特权决定于对方是否把你当友元
翻译
太乙
2009-11-13
打赏
举报
回复
肯定不行,主动和被动的关系都不对!
pengzhixi
2009-11-13
打赏
举报
回复
[Quote=引用 1 楼 akirya 的回复:]
这个我记得[]是不能写成友元形式的。
[/Quote]
up
珍惜生命远离CPP
2009-11-13
打赏
举报
回复
这个我记得[]是不能写成友元形式的。
C++Primer视频(高级)下载地址
1.1章 快速入门 - 复习 2.12章 类定义(一) 3.12章 类定义(二) 4.12章 类定义(三) 5.12章 隐含的this指针 6.12章 类作用域 7.12章 构造函数 8.12章 友元 9.12章 static类成员 10.13章 复制构造函数和赋值
操作符
11.13章 析构函数 12.13章 深复制、浅复制 13.13章 管理指针成员 14.14章
重载
操作符
的定义 15.14章
重载
输入输出
操作符
16.14章
重载
算术
操作符
17.14章
重载
关系
操作符
(一) 18.14章
重载
关系
操作符
(二) 19.14章
重载
赋值
操作符
20.14章
重载
下标
操作符
21.14章
重载
成员访问
操作符
22.14章
重载
自增和自减
操作符
23.14章
调用
操作符
和函数对象 24.14章 转换与类类型 25.15章 定义基类和派生类 26.15章 动态绑定 27.15章 三种继承 28.15章 派生类的构造函数和析构函数 29.15章 转换与继承 30.15章 友元与继承 31.15章 静态成员与继承 32.15章 纯虚函数与抽象类 33.16章 模板与泛型编程 34.16章 类模板 - 顺序队列 35.16章 类模板 - 链式队列 36.16章 函数模板 37.17章 异常处理(一) 38.17章 异常处理(二) 39.17章 异常处理(三) 40.第17章 智能指针 auto_ptr 类 41.17章 命名空间 42.17章 多重继承与虚继承 43.18章 特殊工具与技术
c++的
友元函数
、友元类、
重载
运算符、函数返回值为引用
类实例化的对象
不能
直接访问对象中的私有成员,但可以通过设置
友元函数
和友元类的方式开放访问权限令其可以直接访问。 1.
友元函数
:在类中声明全局函数或者其他类的函数为
友元函数
,这样函数的参数或者局部变量中的对象可以直接访问私有成员。 格式: friend 返回值类型 函数名(参数表); 例: 2.友元类:声明其他类为友元类 3.
重载
运算符 ...
朱老师C++第2部分2.6.C++
友元函数
和友元类
涵盖了C++基础语法和使用,面向对象,STL与泛型,Boost库和设计模式,C++编程优化技巧等非常广泛的内容,是市面上非常缺少的深度完整学习C++,培养编程技能和修养的一套系列学习课程。整个课程预计2020年底前录制...
【C++ 基础篇:21】:friend 友元四连问:什么是友元?友元类?
友元函数
?什么时候用友元?
本期内容主要介绍了 C++ 中友元的概念及注意点:什么是友元?友元类?
友元函数
?什么时候用友元?友元提供了一种突破封装的方式,有时提供了便利。但是友元会增加耦合度,破坏了封装,所以友元不宜多用。
友元函数
可以直接访问类的私有成员,它是定义在类外部的普通函数,不属于任何类,但需要在类的内部声明,声明时需要加friend关键字。友元类的所有成员函数都可以是另一个类的
友元函数
,都可以访问另一个类中的非公有成员。
友元函数
以及
重载
函数
1.
友元函数
的简单介绍 1.1为什么要使用
友元函数
在实现类之间数据共享时,减少系统开销,提高效率。如果类A中的函数要访问类B中的成员(例如:智能指针类的实现),那么类A中该函数要是类B的
友元函数
。具体来说:为了 使其他类的成员函数直接访问该类的私有变量。即:允许外面的类或函数去访问类的私有变量和保护变量,从而使两个类共享同一函数。 实际上具体大概有下面两种情况需要使用
友元函数
:(1)运算
C++ 语言
64,683
社区成员
250,491
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章