Как инициализируют массив классов?

У меня есть этот конструктор класса:

Pairs (int Pos, char *Pre, char *Post, bool Attach = true);

Как я могу инициализировать массив классов Пар? Я попробовал:

Pairs Holder[3] =
{
    {Input.find("as"), "Pre", "Post"},
    {Input.find("as"), "Pre", "Post"},
    {Input.find("as"), "Pre", "Post"}
};

По-видимому, это не работает, я также пытался использовать (), скобки вместо {}, но компилятор продолжают стонать все время. Извините, если это - хромой вопрос, я погуглил довольно трудно, но не смог найти ответ:/

6
задан Lightness Races with Monica 17 November 2011 в 13:33
поделиться

2 ответа

Вызов конструктора явно:

Pairs Holder[3] =
{
    Pairs(Input.find("as"), "Pre", "Post"),
    Pairs(Input.find("as"), "Pre", "Post"),
    Pairs(Input.find("as"), "Pre", "Post")
};
12
ответ дан 8 December 2019 в 12:57
поделиться

Вызов конструктора:

Pairs Holder[3] =
{
    Pairs(Input.find("as"), "Pre", "Post"),
    Pairs(Input.find("as"), "Pre", "Post"),
    Pairs(Input.find("as"), "Pre", "Post")
};

Это похоже на

Holder[0] = Pairs(Input.find("as"), "Pre", "Post");
Holder[1] = Pairs(Input.find("as"), "Pre", "Post");
Holder[2] = Pairs(Input.find("as"), "Pre", "Post");

Полноценный класс можно найти здесь .

6
ответ дан 8 December 2019 в 12:57
поделиться
Другие вопросы по тегам:

Похожие вопросы: