Russian Qt Forum

Программирование => С/C++ => Тема начата: lnkgyv от Июль 10, 2007, 15:56



Название: Помогите пожалуйста с наследование
Отправлено: lnkgyv от Июль 10, 2007, 15:56
Код:
#include <iostream.h>
class A { public: void f() { cout << 1; } };
class B : public A
{ public: void f() { cout << 2; } };
main(){
B b; A& a=b; a.f();
}

Подскажите пожалуйста почему результатом программы будет число 1.


Название: Помогите пожалуйста с наследование
Отправлено: kitov от Июль 10, 2007, 22:26
Потому что A ссылка на класс A .
делай f виртуальной функцией .


Название: Помогите пожалуйста с наследование
Отправлено: lnkgyv от Июль 11, 2007, 12:10
Цитата: "kitov"
Потому что A ссылка на класс A .
делай f виртуальной функцией .

Спасибо за ответ,