Задать вопрос
manul
@manul

Приведение обьекта производного класса к базовому?

Экспериментирую с ООП.
Если привести обьект производного класса к базовому, поля объявленные в производном классе исчезают? А если использовать приведение ссылок?
Например:
class Base{};
class Exp: public Base
{
int i=0;
public:
           int Get() const {  return i; }
           void Set(const int &num) { i=num; }
};
std::vector<Base> MyStack;
Base &GetRef()
{           return *MyStack.begin();               }
int main(){
                Exp a;
                a.Set(4);
                MyStack.push_back(a);
                int res=((Exp&)GetRef()).Get(); // Не работает, мусор из стека
}
  • Вопрос задан
  • 1329 просмотров
Подписаться 1 Оценить Комментировать
Ответ пользователя LexArd К ответам на вопрос (3)
@LexArd
Найди эту книгу: www.ozon.ru/context/detail/id/1631049 там все это расписано, на сколько я помню.
Ответ написан
Комментировать