重载为何实现读写分离?

whoho 2004-03-03 10:12:41
例如我实现一个数组类,重载[]运算符
传统的方式是实现两个函数
T&operator[](int index);//用来写
const T&operator[](int index) const;//只读
我试验只实现第一个,似乎也没有出现什么不正常的状况
但既然那么多写书的都这么写,我也就奇怪了
谁能谈谈?

其实类似的问题还有,比如一个类
基于某种需要向外暴露了一些成员(通过一个引用)
简单的例子如下:
class A{
int var;
public:
int& reference(){return var;}
};
很多人也是建议读写分离

我想了解一下为什么读写分离这么重要?
不分离的危险何在?

我希望大家的回答比较有实用价值
而不只是理论上的争论:)
多谢
...全文
48 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复

64,648

社区成员

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

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