我想将派生结构的所有成员归零.
每隔一段时间就有数百个成员和更多成员被添加,所以我觉得明确地初始化它们容易出错.
结构没有虚函数,所有成员字段都是内置的.然而,由于具有非平凡的构造函数,它们不是POD.
除了练习的标准皱眉外,您是否看到以下任何问题?
struct Base
{
// Stuff
};
struct Derived : public Base
{
// Hundreds of fields of different built-in types
// including arrays
Derived()
{
::memset(reinterpret_cast<char*>this + sizeof (Base), 0, sizeof *this - sizeof (Base));
}
};
Run Code Online (Sandbox Code Playgroud)
谢谢.