【发布时间】:2011-03-22 02:49:40
【问题描述】:
我经常遇到以下情况,我有一个我希望访问的数据结构,如下所示:
class data {
public:
double error;
double value;
...
}
...
data *outputs;
...
double lastValue = ...;
double someValue = ...;
for (int i = 0; i < n; ++i) {
outputs[i] = someValue; //should be equivalent to outputs[i].value = someValue
outputs[i].error = lastValue - someValue;
}
目前我只使用outputs[i].value =,但出于可读性目的,使用(类似于)上面的示例实际上更有意义(至少从理论的角度来看,代码不需要可维护性) .
我知道 operator= 适用于上述情况,但是对于简单的访问,我仍然必须使用 output[i].value。对于概念设计的可读性以及不会给程序员带来麻烦的最佳解决方案是什么。
【问题讨论】:
标签: c++ design-patterns data-structures overloading