Красивый вывод дерева

Подскажите, как можно красиво вывести это небинарное дерево? Степень узла у него пользовательская

Структура дерева:

struct Tree {
    int key = NULL; //ключ
    int index = NULL; //индекс
    int countchild = NULL; //число потомков
    Tree* sibling = nullptr; //братья
    Tree* child = nullptr; //сыновья
};

Функция вывода:

void print(Tree* Node) // вывод дерева
{
    if (Node->child != NULL) cout << "[+]";
    cout << "(" << Node->index << "-" << Node->key << ")" << endl;
    if (Node->countchild > 0)
        for (int i = 0; i < Node->countchild; i++)
            print((*Node)->child[i]); //вот здесь ошибка [не существует подходящей функции преобразования из Tree в Tree*]
    else return
}

Ответы (0 шт):