3条回答 默认 最新
- 关注
码龄 粉丝数 原力等级 --
- 被采纳
- 被点赞
- 采纳率
bostonAlen 2021-04-19 16:04最佳回答 专家已采纳补充一下,友元函数不是成员函数,因此你根本不可能在函数中直接访问timer,因为没有this指针,如楼上所说,最终访问的时候肯定是要加对象的。你的函数可以加一个参数就是timer所在的类。
采纳该答案 已采纳该答案 专家已采纳评论解决 1 无用打赏举报微信扫一扫
分享评论登录 后可回复...
查看更多回答(2条)
报告相同问题?
提交
相关推荐 更多相似问题
- 2021-04-19 10:11回答 3 已采纳 补充一下,友元函数不是成员函数,因此你根本不可能在函数中直接访问timer,因为没有this指针,如楼上所说,最终访问的时候肯定是要加对象的。你的函数可以加一个参数就是timer所在的类。
- 2021-01-09 16:36回答 1 已采纳 这是因为你加了名称空间,相当于加了作用域。Array成员函数的实现,以及友元函数的实现,同样需要放在Array类所在的名称空间内。 把rnyarray.cpp里的实现代码放在名称空间内即可:
- 2021-06-16 12:14回答 2 已采纳 在第4行,添加 类鱼的声明:class fish; 在第48行末尾添加 ‘}'
- 2018-08-25 21:58在路上DI蜗牛的博客 转自:友元函数、友元类、访问私有数据成员、友元关系[C++]... 一个类的私有数据成员通常只能由类的函数成员来访问,而友元函数可以访问类的私有数据成员,也能访问其保护成员 2. 友元函数的用处体现在哪里? 2.1...
- 2021-12-21 21:17qq_50426849的博客 题目概述: 一个日期(Data)类的对象和一个时间(Time)类的对象,均指定内容,要求一次输出其中日期和时间。 编程: 上机实践:
- 2019-07-03 15:44你说的都对可我就是不听呢的博客 无法解决的问题:类中声明,类外定义的成员函数,导致无法访问类中的私有成员函数 去掉using namespace std; 改变#include <iostream>啥的都没用 苍了个天,走过路过的帮个忙? 真的是头大,跟着视频敲代码...
- 2022-03-22 22:01回答 1 已采纳 c++机制规定就是这样必须将先定义的类的成员函数作为后定义类的友元函数,调换顺序会出现语法错误
- 2020-04-03 10:19回答 1 已采纳 Classfile.h ``` class X { public: friend class Y; friend class Z; friend void h(X x); X(i
- 2022-04-15 21:43回答 1 已采纳 test01又不是友元,当然不能访问私有成员!
- 2020-11-16 17:56铬金属的博客 用的VS2019,出现标题中的问题,原来是类中声明友元函数时,有些地方没注明命名空间,不能丢,因为IDE也没这提示,一定要写全。
- 2021-01-21 18:45友元函数是一种特殊的函数,它必须要在类中进行声明,但其本身并不是类的成员函数,但友元函数可以访问类的私有成员变量。 友元函数的好处: 1、实现类之间的数据共享 2、提高程序运行效率,方便编程 友元函数的坏处...
- 2020-12-20 10:06why you learn hard?的博客 //不设置友元的情况,类外的全局函数无法访问私有成员 #include <iostream> #include<string> using namespace std; class building { public: string m_bed; building(string name1, string name2) {...
- 2016-11-14 13:28回答 3 已采纳 两个函数的参数第一个有&符号,第二个没有,所以两个不是一个函数,要参数类型完全一样才行。
- 2021-07-27 22:13回答 1 已采纳 在friend void Goodgay::visit();这里的时候,编译器不识别Goodgay,所以报错,代码修改如下:如有帮助,请采纳一下,谢谢。 #include<iostream>
- 2022-05-01 11:09回答 1 已采纳 #include<iostream> using namespace std; class Person; template<typename T> bool myCompa
- 2017-09-14 15:23书屋里的猫xk的博客 工程中我们经常需要访问一些类的成员,添加一个友元函数可以达到我们的目的。#include #include using namespace std ;class Student{ private: string name; int age; int sore; public: Student(string name,
- 2020-12-17 02:06类的对象不能直接访问类声明的私有成员变量,否则破坏了信息隐藏的目的。 在C++中,为了防止某些数据成员或成员函数从外部被直接访问,可以将它们声明为private,这样编译器会阻止任何来自外部非友元的直接访问。 ...
- 2021-01-20 07:121.友元函数的简单介绍 1.1为什么要使用友元函数 在实现类之间数据共享时,减少系统开销,提高效率。如果类A中的函数要访问类B中的成员(例如:...1.2.2缺点:友元函数破环了封装机制,尽量不使用成员函数,除非不得已的
- 2015-04-17 01:43回答 2 已采纳 C#不支持友元。VB倒是支持,不过和C++的友元不是一回事。VB的友元相当于C#的internal 如果你想让一个类操作另一个类的私有成员,可以定义为嵌套类
- 2014-09-17 10:47jeasn168的博客 那是否有什么方法不通过类的成员函数或者类的友元函数访问类中的私有成员变量呢?通过指针就可以办到,不过这其实是C++的缺陷,这种方法不推荐使用! #include using namespace std; class Test { private: ...
- 没有解决我的问题, 去提问