c ++ создает класс, зная о другом объекте - PullRequest
0 голосов
/ 28 января 2020

если у меня что-то вроде этого:

class A: public Mother{
public:
    A(B b){ b_pointer = &b; };
    void update() override { int value = b_pointer->getSomething(); };
private:
    B* b_pointer;
};


class B{
public:
   void update(//parameters);
   int getSomething();
};

, то в другой части программы, скажем, в классе C, создаются объекты B и A.

B b_object;
b_object(//attributes of C needed as parameters);
A a_object(b_object);

Итак, b_pointer будет относиться к b_object? если внутри метода ИИ использовать b_pointer->getSomething(); он всегда будет ссылаться на b_object?

, потому что мне нужно обновить a_object, чтобы он знал о b_object, но я не могу написать метод void A::update(), такой как update(B& b) {b.doThings()}, так как A::update переопределяет Mother метод и в классе C у меня есть вектор Mothers* для обновления.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...