1
我做了树结构,其中两个定义如下;直接访问struct-within-struct的属性?
template < class T, int W, int H >
struct dataRect {
const int w = W;
const int h = H;
const int l = W * H;
T d[W * H];
};
template < class T >
struct Vec2{
T x;
T y;
// more things
};
而第三个基本上只是一个结构包含每个以前的结构之一;
template < class T, int W, int H >
struct xDataRect {
dataRect<T, W, H> r;
Vec2<int> p;
};
现在可以说我有一个xDataRect XDR,是有办法,使其可以直接作为
xdr.x = 3;
,而不是
xdr.p.x = 3;
访问前两个结构的属性
这样它们完全可以互换? ((换句话说,改变xdr.x改变xdr.p,改变xdr.p改变xdr.x))
这并不重要(我可以只写xdr.px),但它会很好知道是否有办法做到这一点。
没有C++没有像C++/cli或C#这样的属性(你可以使用引用,但这是一个额外的开销) –
谢谢,引用正是我所期待的(我不知道它们是如何被调用的) 。 – agecaf
我建议不要使用它们! –