Форум программистов, компьютерный форум CyberForum.ru

Как работает typeid( ).name() в minigw? - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 12, средняя оценка - 4.92
Gepar
 Аватар для Gepar
1173 / 529 / 20
Регистрация: 01.07.2009
Сообщений: 3,511
08.04.2011, 22:00     Как работает typeid( ).name() в minigw? #1
Почему typeid( ).name() в minigw возвращает не просто тип аргумента, а ещё и две цифры перед ним?
Кусок кода:
C++
1
2
3
4
5
6
7
8
   for ( size_t j = 0; j < employees.size(); j++ )
   {
      // output class name
      cout << "deleting object of "
         << typeid( *employees[ j ] ).name() << endl;
 
      delete employees[ j ];
   } // end for
И вывод:
[IMG]http://s009.***********/i310/1104/86/77ae33b1a2c2.png[/IMG]
Код 100% правильный и взят из книги, но мне интересно почему именно такой вывод делает minigw компилятор и что означают те 2 цифры. Подскажите пожалуйста.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
lemegeton
 Аватар для lemegeton
2909 / 1338 / 133
Регистрация: 29.11.2010
Сообщений: 2,720
09.04.2011, 00:17     Как работает typeid( ).name() в minigw? #2
Очевидно, это количество символов в имени типа данных.

Добавлено через 5 минут
Поведение этого функционала зависит от реализации. Компилятор вообще не обязан ничего возвращать при вызове данной функции. Нельзя на него полагаться.
Gepar
 Аватар для Gepar
1173 / 529 / 20
Регистрация: 01.07.2009
Сообщений: 3,511
11.04.2011, 20:11  [ТС]     Как работает typeid( ).name() в minigw? #3
lemegeton, теперь понятно что за цифры он возвращает, спасибо.
Mr.X
Эксперт С++
 Аватар для Mr.X
2801 / 1577 / 247
Регистрация: 03.05.2010
Сообщений: 3,662
11.04.2011, 20:51     Как работает typeid( ).name() в minigw? #4
Цитата Сообщение от lemegeton Посмотреть сообщение
Поведение этого функционала зависит от реализации. Компилятор вообще не обязан ничего возвращать при вызове данной функции. Нельзя на него полагаться.
Ну почему же. В Стандарте написано: Returns an implementation-defined NTBS.
Yandex
Объявления
11.04.2011, 20:51     Как работает typeid( ).name() в minigw?
Ответ Создать тему
Опции темы

Текущее время: 04:45. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru