社区
C++ 语言
帖子详情
C++类内部定义的成员函数不能被定义为其他类的友元函数吗?
Hello_xzy_Word
2019-04-20 10:29:00
...全文
86
回复
打赏
收藏
C++类内部定义的成员函数不能被定义为其他类的友元函数吗?
[图片]
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
C++
之友元:
友元函数
和友元
类
详解
一、友元介绍我们知道,
类
的
成员函数
可以访问同
类
的其他
成员函数
,包括公有、私有和保护成员。而
类
的外部函数只能访问
类
的公有成员。友元是一种允许非
类
成员函数
访问
类
的非公有成员的一种机制。可以把一个函数指定为
类
的友元,也可以把整个
类
指定为另一个
类
的友元。
友元函数
友元
类
二、
友元函数
友元函数
在
类
作用域外
定义
,但它需要在
类
体中进行说明为了与该
类
的
成员函数
加以区别,
定义
的方式是在
类
中用关键字friend说明该函数,格式如下: friend
类
型
友元函数
名(参数表);友元的作用在于提高程序的运行效率
友元函数
注意事项:1、
友元函数
不是
类
的
成员函数
,在函数体中访问对象的成员,必须用对象名加运算符“.”加对
编写一个
友元函数
,求两个日期之间相差的天数;
日期
类
Date包含日期的年、月、日三个数数据成员,编写一个
友元函数
,求两个日期之间相差的天数; 重要的是理顺:这个函数不是Date
类
的
成员函数
朱老师
C++
第2部分2.6.
C++
友元函数
和友元
类
《朱老师带你学
C++
》属于系列课程《朱有鹏老师热门编程语言全解》的第一部分,主要针对
C++
语言完全学习。本课程可以看做是嵌入式linux核心课程中《C语言高 级专题》课程的延续,在学好了C语言前提下继续深度学习
C++
语言。整个课程共分为5部分。涵盖了
C++
基础语法和使用,面向对象,STL与泛型,Boost库和设计模式,
C++
编程优化技巧等非常广泛的内容,是市面上非常缺少的深度完整学习
C++
,培养编程技能和修养的一套系列学习课程。整个课程预计2020年底前录制完成主体部分,总时长预计150-200小时。朱老师
C++
第1部分-从C到
C++
朱老师
C++
第2部分-
C++
和面向对象朱老师
C++
第3部分-STL等高阶话题朱老师
C++
第4部分-Boost库和设计模式朱老师
C++
第5部分-
C++
编程优化
C++
友元函数
与拷贝构造函数详解
一、
友元函数
1.
友元函数
概述: (1)
友元函数
是
定义
在一个
类
外的普通函数。
友元函数
和普通函数的
定义
一样;在
类
内必须将该普通函数声明为友元。 (2)
友元函数
不是
成员函数
。
不能
通过对象来调用,而是直接调用;
友元函数
可以访问
类
的公有、受保护以及私有成员,但是必须通过对象、对象指针或者对象引用来访问。 2.
友元函数
的声明: friend 返回值
类
型 函数名(参数表); 在
类
中只需要将这个声明放置在公有部分即可。 class Point { double x, y; public: Point(){x = 0.0; y = 0.0;} Point(double xx, double yy){x
c++
友元函数
与友元
类
的深入解析
友元函数
的特点是能够访问
类
中的私有成员的非
成员函数
。
友元函数
从语法上看,它与普通函数一样,即在
定义
上和调用上与普通函数一样
C++ 语言
64,654
社区成员
250,484
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章