是否可以定义一个重载operator[]
这需要多个参数吗?也就是说,我可以定义operator[]
如下:
//In some class
double operator[](const int a, const int b){
return big_array[a+offset*b];}
然后像这样使用它?
double b=some_obj[7,3];
不,你不能超载operator[]
采取多个论点。代替
double b = some_obj[7,3];
use
double b = some_obj[7][3];
这个答案解释了如何创建代理对象以便能够实现后者。
否则,你可能会超载operator()
采用 2 个参数。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)