答案是四次,为什么?

设Myclass为已定义的类,有声明语句如下:
Myclass a1 ;
Myclass a2() ;
Myclass a3[3];
Myclass *a4[5];
则执行上述语句序列时,类Myclass的构造函数的调用次数共是( )。
不应该是a1一次,a2()一次,a3的三个元素三次,一共应该是五次啊?

a1一次,a3的三个元素三次,a2不会调用