Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C++ Builder > Многоуровневый класс


Автор: InfMag 6.1.2011, 05:04
Доброго времени суток!

Я надеюсь мой вопрос не избит до безобразия и не непростительно глуп и банален.
В общем хочу построить многоуровневый класс, то-бишь допустим есть код такой:
Код

class myclass1 {
private:
    int val = 1;
public:
    bool func1();
};

bool myclass1::func1() {
    if ( val == 1 ) {
        return true;
    } else {
        return false;
    }
}

Ну понятно, я общаюсь потом с ним так:
Код

myclass1 *cl = new myclass1;
cl->func1();

А если я хочу построить группу ветвей? Чтобы например было пару веток и в ней ещё пара функций или значений, типа:
Код

cl->vetka1->func2();
cl->vetka2->func1();

Как мне реализовать такое разветвление?

Автор: oldcode 6.1.2011, 09:10
http://ubuntuforums.org/showthread.php?t=1208514

Автор: Alca 6.1.2011, 10:34
Цитата

Как мне реализовать такое разветвление?

Код

class myclass1 {
public:
    class Cvetka1 {
        bool func1();
    };
    Cvetka1 vetka1;

    class Cvetka2 {
        bool func2();
    };
    Cvetka2 vetka1;
};

Автор: InfMag 9.1.2011, 21:23
Alca, и как потом обращаться к функциям?

Автор: Alca 9.1.2011, 21:54
Код

cl->vetka1.func2();

Автор: InfMag 9.1.2011, 23:30
Alca, спасибо! Всё прояснилось, проблема решена! Только ещё к подклассам надо public: тоже проставлять.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)