Указатель на родительский класс

Рейтинг: 0Ответов: 0Опубликовано: 06.03.2015
class A{
public: mc
myclass * mc;
A(mc*m){mc=m;};

class B{

public: B(){}
  work(){
// здесь нужно работать с методами и объектами одного из экземпляров класса myclass через указатель, который передается классу A
}

}

}

Экземпляр класса A создается в классе myclass(для каждого myclass может быть несколько экземпляров), в то же время для каждого A может быть несколько созданных в нем экземпляров класса B. Внутри B нужно работать с методами и объектами класса A, в котором В был инициализирован, но в то же время, работать и с myclass, в котором был инициализирован A. То есть по иерархии.

IntelliSense предлагает сделать указатель mc статическим. Тогда да, действительно я могу работать в классе В с методами класса myclass, но это не подходит, так как у меня может быть несколько экземпляров myclass.

Единственным вариантом реализации такой задачи является передача this'а внутри А при создании экземпляров класса B? Таким образом, каждый экземпляр B будет хранить указатель на текущий A, в котором он был создан

Ответы

Ответов пока нет.