struct LoadsForAPDLScript
{
double JntLCLoad;
double JntPPLoad;
double JntLimManLoad;
double JntLimShockLoad;
double JntOthLimTenLoad;
double JntOthLimManLoad;
double JntBPLoad;
double JntUltManLoad;
double JntUltShockLoad;
double JntOthUltTenLoad;
double JntOthUltManLoad;
};
有没有办法在一行中初始化上面提到的所有struct变量而不是逐个初始化它?
答案 0 :(得分:2)
如果它是C ++,空构造函数将自动初始化零的简单数字类型的所有成员变量。
struct LoadsForAPDLScript {
...
LoadsForAPDLScript() {}
};
考虑到C兼容性,我不太确定隐式默认构造函数是否也会这样做。也许有人手头有C ++标准(或者心里明白),那么请扩展这个答案。
答案 1 :(得分:1)
使用memset
:
LoadsForADPLScript instance;
memset(&instance, 0, sizeof(LoadsForADPScript));