没有默认构造的类怎么作为其他类的成员

没有默认构造的类如何作为其他类的成员
示例一下:
class A
{
  public:
  A(int i):_i(i){}
  int _i;
};

class B
{
  public:
  B(int i):_a(i){}
  A _a;
};

上面的代码木有问题,但是如果我希望B中的_a是一个数组就有问题了,如
class B
{
  public:
  A _aa[128];
  // 如何写B的构造才能合法?
}

哎,生疏了,生疏了,求指教没有默认构造的类怎么作为其他类的成员

------解决方案--------------------
不用默认构造函数的话,你在数组中存放类对象的指针。
A* _aa[128]
------解决方案--------------------
最好还是为A写一个默认构造函数吧。。如果你一定要这么做,就把_aa改为A*数组。。再一个个去new。。
------解决方案--------------------
无论是使用数组形式,还是STL标准库形式, 前置要求就是你的类型要有默认构造函数. 不满足这一要求是无法使用的. 
这些要求是你使用这些功能的基础, 不需要跟标准对着干.
要么,另写一个默认构造函数, 要么给有参的构造函数提供一个默认值. A(int i=0):_i(i){}