Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Как вывести на экран имя класса?

37K
14 декабря 2008 года
igsavenko
15 / / 13.12.2008
Пусть дан класс:
Цитата:

class base {
public:
virtual void iam() { cout << "base\n"; }
};


Определите два производных от base класса и в каждом определите функцию iam(), выдающую имя своего класса. Создайте объекты этих классов и вызовите iam() для них. Присвойте адреса объектов производных классов указателю типа base* и вызовите iam() с помощью этих указателей.

Продемонстрируйте мне пожалуйста, как вывести имя класса на одном из примеров, а дальше я сам как-нибудь!

2.2K
15 декабря 2008 года
REFOT
181 / / 08.04.2005
 
Код:
class base{
public:
virtual void iam() { cout << "base\n"; }
};

class A : public base
{
public:
void iam() { cout << "A\n"; }
};


 
Код:
A a;
a.iam();

base* pbase = &a;
pbase->iam();
307
15 декабря 2008 года
Artem_3A
863 / / 11.04.2008
Ну в принципе можно еще еще можно по извращаться с динамической идентификацией типов:
 
Код:
virtual void iam(base* pClass) { cout << "typeid(pClass)\n"; }
virtual void iam() { cout << "typeid(this)\n"; }
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог