Информация об изменениях

Сообщение Re: initializer_list и неизвестная размерность от 24.11.2020 11:49

Изменено 24.11.2020 11:53 rg45

Re: initializer_list и неизвестная размерность
Здравствуйте, Bill Baklushi, Вы писали:

BB>Хочется инициализировать массив одним initializer_list, но рекурсивным. Например

BB>Что-то можно сделать или в морг?

Ну вот такой эскиз подхода, возможно, окажется полезным:

http://coliru.stacked-crooked.com/a/5bd94a0085515e8e

#include <vector>

struct Tree : std::vector<Tree>
{
    int val {};
    Tree(int val) : val(val) {}
    Tree(std::initializer_list<Tree> children) : vector(children) {}
};

int main()
{
    Tree tree { 1, {2, 3, {4, 5, {11, 12, 13}, 6}, {7, 8, 9}}};
}
Re: initializer_list и неизвестная размерность
Здравствуйте, Bill Baklushi, Вы писали:

BB>Хочется инициализировать массив одним initializer_list, но рекурсивным. Например

BB>Что-то можно сделать или в морг?

Ну вот такой эскиз подхода, возможно, окажется полезным:

http://coliru.stacked-crooked.com/a/5bd94a0085515e8e

#include <vector>

struct Tree : std::vector<Tree>
{
    int val {};
    Tree(int val = 0) : val(val) {}
    Tree(std::initializer_list<Tree> children) : vector(children) {}
};

int main()
{
    Tree tree { 1, {2, 3, {4, 5, {11, 12, 13}, 6}, {7, 8, 9}}};
}