我有三個結構,其中一個與其他兩個繼承:C++:從基類實例構造子類?
typedef struct _abc
{
int A;
int B;
int C;
} ABC;
typedef struct _def
{
int D;
int E;
int F;
} DEF;
typedef struct _abcdef : ABC, DEF { } ABCDEF;
(我想要的第三結構包含前兩者的所有成員是否有更好的方式來做到這一點?)
現在,我的ABC
和DEF
完全填充的情況下,我想作一個新的ABCDEF
實例:
int main()
{
ABC abc;
abc.B = 2;
abc.C = 1;
abc.A = 10;
DEF def;
def.D = 32;
def.E = 31;
def.F = 90;
// make a new ABCDEF with all the values of abc and def
}
什麼是創造的最佳方式?我能做到這一點,但它還挺吸收:
ABCDEF abcdef;
abcdef.A = abc.A;
abcdef.B = abc.B;
abcdef.C = abc.C;
abcdef.D = def.D;
abcdef.E = def.E;
abcdef.F = def.F;
以上耦合到結構的成員,如果添加了許多成員是凌亂。