【发布时间】:2016-04-21 18:08:31
【问题描述】:
这就是你返回对索引为 i 的动态分配数组元素的引用的方式吗??
int& dynamic_array::operator[](unsigned int i) {
if (i >= get_size())
throw exception(SUBSCRIPT_RANGE_EXCEPTION);
else
return array[i];
}
【问题讨论】:
-
是的,没错
-
要使其能够用于
const对象,您需要添加const重载。else也是多余的,因为throw在该点中止执行流程。 -
考虑使用
std::out_of_range而不是std::exception。
标签: c++ reference dynamic-memory-allocation