假设类foo
包含静态分配的数组成员。
class foo
{
private:
char d_chars[5];
public:
foo();
};
如果初始化列表具有不同的大小而不是数组的大小,是否有任何编译器标志可以产生警告?
例如,以下内容可能在语法上有效,但开发人员可能忘记添加所有必需的初始化程序。
foo::foo() :
d_chars{'A', 'B', 'C', 'D'}
另一方面,我知道如果初始化列表超过了数组的大小,编译器会优雅地产生错误。