【发布时间】:2012-03-28 10:12:08
【问题描述】:
我第一次为一些实用的东西重载 [] 运算符,我遇到了我以前从未想过的东西。 我正在尝试制作一个包含指针的自定义类数组类(并提供一些独特的功能)。 使用 [] 运算符从我的类中返回其中一个指针是显而易见的,但我也设想能够从外部更改指针的目标地址。 也许我想多了,但是对返回值的赋值(比如fish[0]=lpHatAddress;)不会因为返回的值只是一个地址而导致错误吗?
我能想到的唯一解决方案是存储指向指针的指针,这将占用两倍的内存。 我是否忽略了一些明显的东西? 有没有干净的方法来做到这一点?
【问题讨论】:
-
显示您的
[]重载代码。我相信它会返回对元素的引用。 -
这几乎是发明引用的全部原因。
-
@SethCarnegie 对不起。说我生疏是轻描淡写的。 :P
标签: c++ overloading operator-keyword setter getter