摘要: 最近在做面向对象的研讨作业,在写代码时遇到一些令我抓狂的问题,在经过漫长的检查翻书搜索后总算都解决了。下面把问题提取出来,做个记录。比如说在类内定义了个运算符重载:char & operator[](size_t x);这个是为了能把返回值即当右值又当左值。但是,如果要在加const的参数上使用,则是不允许的:void test(const (类名) & a){a[0];} // error原因是当参数加const 后则不允许使用任何可能修改对象的功能,返回引用也不允许,即使你没有写出修改数据的语句。解决方案是再写个函数重载:1 char & operator[](si 阅读全文
posted @ 2012-11-09 21:38 wuminye 阅读(359) 评论(0) 推荐(0) 编辑