Если вы хотите использовать массив (а у класса, который у вас есть, есть конструктор, который принимает строку, но не имеет конструктора по умолчанию), вы должны инициализировать его в конструкторе со списком инициализатора:
class classA
{
public:
classA();
int intArray[20];
classB arrayOfClassB[20];
};
classA::classA() : arrayOfClassB({"", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", ""}) { }
Невозможно написать аргумент для каждого экземпляра.Поэтому, если ваш массив имеет размер 20, у вас должно быть 20 строк в списке инициализатора.
Вероятно, вам не так удобно использовать вектор, подобный этому:
class classA
{
public:
classA();
int intArray[20];
vector<classB> arrayOfClassB;
};
classA::classA() : arrayOfClassB(20, classB("")) { }