От: | pavard | ||
Дата: | 29.01.14 21:28 | ||
Оценка: | -9 |
#include <iostream>
struct Iface
{
virtual void Func() = 0;
};
struct reg_t : Iface
{
void Func()
{ std::cout << __PRETTY_FUNCTION__ << "\n"; }
};
struct bus_t : reg_t
{
void Func()
{ std::cout << __PRETTY_FUNCTION__ << "\n"; }
};
int main()
{
bus_t b;
reg_t & r = static_cast< reg_t & >( b );
b.Func();
r.Func();
r.reg_t::Func();
}
От модератора.
Как выяснилось, это не проблема, с которой топикстартер столкнулся, а вопрос, придуманный им для собеседований.
Вступая в дискуссию, делайте поправку на этот факт.