我有这堂课:
class Texture
{
public:
//I need this variable in this format
float diffuseColor[3];
}
但我想制作一个比处理“diffuseColor [0]”等更简单的界面,例如:
myTexture.color.r = 1.0f; //this is diffuseColor[0]
所以我试图得到一个类,它作为一个外壳来处理diffuseColor值,比如:
class Color
{
public:
float *r, *g, *b;
}
在我的纹理类中:
class Texture
{
public:
Texture()
{
color.r = &diffuseColor[0];
color.g = &diffuseColor[1];
color.b = &diffuseColor[2];
}
Color color;
private:
float diffuseColor[3];
}
但现在的情况是,如果我想使用颜色值,我必须取消引用它们:
(*myTexture.color.r) = 1.0f;
我怎样才能实现这一点而不必每次我想使用它时取消引用它?