我有几个输入结构,我需要转换为其他结构,所以我可以将它传递给我的方法。如何从一个结构复制字段到另一个
struct Source1
{
public float x1;
public float x2;
public float x3;
}
struct Source2
{
public float x1;
public float x3;
public float x2;
public float x4;
}
struct Target
{
public float x1;
public float x2;
public float x3;
}
我确定源结构有必填字段(类型和名称是重要的),但该字段的偏移量是未知的。源结构也可能包含一些我不需要的额外字段。
如何从源结构复制必需的字段到目标结构。我需要尽快做到这一点。
在C中,这种问题有一个非常简单的方法。
#define COPY(x, y) \
{\
x.x1 = y.x1;\
x.x2 = y.x2;\
x.x3 = y.x3;\
}
我想买一台字段的集合,然后使用它的名字作为一个键时,会字段的值,但它看起来像慢的解决方案给我。
链接死,死链接起不到任何一个。 –
@mjwills:看起来我需要为每个源结构编写运算符,对吧?假设我有五个来源和一百个字段。 – walruz
查看最后一行@walruz。 – mjwills