【交流学习】MyString的几个问题

brk1985 2011-07-21 10:00:48
1. MyString中运算符=重载,返回MyString类对象的引用,这里为什么要使用引用?能具体讲讲吗?

2. 输入输出运算符>>、<<重载,为什么要使用友元函数?

2. 书上说友元函数(运算符重载函数为友元函数)不能范围MyString类私有成员,由于重载了操作符[],可以通过下标索引访问。友元函数不是能通过对象名访问类私有成员的吗?
...全文
246 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
KWDIWT 2011-07-21
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 brk1985 的回复:]

引用 1 楼 luciferisnotsatan 的回复:
MyString 是什么?

1 不返回引用,会产生一个临时变量。如果返回指针,那么 a=b=c这种连等没法写了。
2 不用友元,访问不了私有成员。那就没意义了


不用友元、可以作为类成员函数呀。。。发现作为类成员函数不可取,使用重载后的<<运算符,<<(cout,str2);运行也是有问题,也不符合习惯思维。。。第三个……
[/Quote]

要是定义为类的成员函数,左操作数只能是该类类型的对象,这个用法与某些操作符使用方式相反(如输出操作符), 输出操作符左操作数必须为ostream类型...
brk1985 2011-07-21
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 luciferisnotsatan 的回复:]
MyString 是什么?

1 不返回引用,会产生一个临时变量。如果返回指针,那么 a=b=c这种连等没法写了。
2 不用友元,访问不了私有成员。那就没意义了
[/Quote]

不用友元、可以作为类成员函数呀。。。发现作为类成员函数不可取,使用重载后的<<运算符,<<(cout,str2);运行也是有问题,也不符合习惯思维。。。第三个问题是不是书本上的问题,友元函数肯定能通过对象名访问类私有成员char* str呀?
至善者善之敌 2011-07-21
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 luciferisnotsatan 的回复:]
MyString 是什么?

1 不返回引用,会产生一个临时变量。如果返回指针,那么 a=b=c这种连等没法写了。
2 不用友元,访问不了私有成员。那就没意义了
[/Quote]

+++1 正解
brk1985 2011-07-21
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 luciferisnotsatan 的回复:]
MyString 是什么?

1 不返回引用,会产生一个临时变量。如果返回指针,那么 a=b=c这种连等没法写了。
2 不用友元,访问不了私有成员。那就没意义了
[/Quote]

MyString ,,,编程对String类的实现。。。
luciferisnotsatan 2011-07-21
  • 打赏
  • 举报
回复
MyString 是什么?

1 不返回引用,会产生一个临时变量。如果返回指针,那么 a=b=c这种连等没法写了。
2 不用友元,访问不了私有成员。那就没意义了
brk1985 2011-07-21
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 kwdiwt 的回复:]
不能范围MyString类私有成员 //是什么意思?
[/Quote]

访问。。。搜狗输入法问题。。。
KWDIWT 2011-07-21
  • 打赏
  • 举报
回复
不能范围MyString类私有成员 //是什么意思?
brk1985 2011-07-21
  • 打赏
  • 举报
回复
第三个问题没人回答下吗???
内容概要:本文围绕四旋翼无人机悬停控制问题,基于线性化动力学模型,系统性地对比研究了三种经典控制范式:PID(比例-积分-微分控制)、LQR(线性二次型调节器)和MPC(模型预测控制)。研究从“误差驱动”的反馈控制思想(PID、LQR)与“滚动优化”的前瞻控制思想(MPC)两种核心理念出发,深入阐述了各算法的设计原理、数学建模、控制器设计流程与实现细节,并借助Matlab代码完成了完整的仿真验证。重点剖析了不同控制方法在动态响应品质(如上升时间、超调量、稳态精度)与计算资源消耗(实时性要求)之间的内在权衡,为无人机飞控及其他高动态系统的算法选型提供了详实的基准评估依据和实践指导。; 适合人群:具备自动控制理论基础和Matlab编程能力的高校研究生、科研人员及自动化、航空航天领域的工程技术人员。; 使用场景及目标:① 学习和掌握PID、LQR、MPC三种核心控制算法的理论内涵与工程实现;② 深刻理解“误差反馈”与“模型预测”两种根本性控制哲学的差异与适用边界;③ 为高阶、复杂的控制系统设计与算法选型提供性能对比的量化参考基准。; 阅读建议:学习者应结合所提供的Matlab代码,亲自动手复现仿真过程,通过调整系统参数、控制器增益和初始扰动,深入探究各算法的动态响应特性、鲁棒性表现及各自的优缺点。

65,213

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧