d初化大结构
原文
如果理解正确,如下:
struct S
{
char[16384] array;
}
然后用它,必然会导致创建和链接一个S.init,从而导致二进制大小膨胀16kb.是这样吗?
是的.但,全零就不是这样了.至少对TypeInfo.initializer,它指向用指示要写入的零个数的数组大小的null.
顺便,可指定零默认值来覆盖它:
struct S
{
char[16384] array = 0; // 无初化存储.
}
浙公网安备 33010602011771号