本人小初学者,请问一个有关问题,类数据成员包含stack时malloc该类数组时出现的

本人小菜鸟,请教一个问题,类数据成员包含stack<T>时malloc该类数组时出现的
我自定义了一个类A, 类A里面包含一个stack<T>的数据成员staA,然后我malloc了一个类型A的数组
但是在调用A.staA.push(T)的时候总是告诉我访问冲突

我想原因是不是这样,malloc没有给staA预分配空间,导致在插入的时候出现了访问冲突,但stack也没有像vector那样能初始化时候vector<T>.resize(size)这样的初始化方式可以写在类A无参的构造函数里面啊,怎么给stack<T> staA预分配空间啊

突然不知所措,也不知道怎么改动

class A{
  stack<T> staA;
  A(){}
}

main(){
  T* test = (T*)malloc(5*sizeof(A));

  T b;
  test[0].push(b);//这里报错 这种状况如何处理啊 我的类A里面的stack数据成员想保留 或是其它实现数据成员stack方式也行
}

------解决方案--------------------
class A{
public:
stack<T> staA;
A(){}
}
T* test = (T*)malloc(5*sizeof(A));

==>
T* test = new A[5];