Рассмотрим следующий код:
class Base {
//some code
};
class A : public virtual Base{
//some code
};
class B : public virtual Base{
//some code
};
class C: public A, public B {
//some code
};
Другими словами, мы имеем множественное наследование, и все классы наследуются от класса Base. Теперь учтите, что указатель «this» существует в коде в классах A, B, C, Base. Я знаю, что в целом мы не можем предполагать, что значение указателя «this» будет одинаковым во всех случаях. Но что это, указатель «this» приводится к классу Base * внутри A, B, C всякий раз, когда он используется. Правильно ли говорить, что приведенный указатель «this» после приведения к общему классу Base * будет содержать один и тот же адрес внутри A, B, C? Спасибо