Hum*_*ity 3 c++ inheritance object
class A
{
  public: int a,b,c;
};
class B: public A
{
   public: int d;
   B():d(0){} // Some hackery needed here
};
int main()
{
   B obj;
   std::cout<< obj.a << std::endl; // garbage
   std::cout<< obj.b << std::endl; // garbage
   std::cout<< obj.c << std::endl; // garbage
   std::cout<< obj.d << std::endl; // 0
}
如何将子对象数据成员a,b和c初始化为0?我不被允许修改A类.
尝试
B() : A() , d(0){}
A()值初始化A,因为A是POD,所以成员将被默认(零)初始化