【发布时间】:2014-02-03 20:22:14
【问题描述】:
我想通过为我的向量创建一个运算符来简化我的编码。
我有一堂课Voxelgrid:
class Voxelgrid {
struct Voxel{
float dist;
float weight;
};
vector<Voxel> grid;
int RESOLUTION;
};
现在的事情是我想访问和写入这些体素很多,我将通过使用索引来访问它们:
grid[i + j*RESOLUTION + k*RESOLUTION*RESOLUTION].distance
例如。
是否可以编写一个运算符,以便我可以改为编写
grid(i,j,k).distance
改为。
【问题讨论】:
-
您确定不想写在
voxelgrid而不是网格成员上吗?即voxelgrid(i,j,k).distance或voxelgrid[i,j,k].distance(两者都是可能的。 -
s/distance/dist/,大概。看起来您在示例中使用grid作为Voxelgrid实例,但这很令人困惑,因为向量成员也称为grid。
标签: c++ operators operator-overloading