То, что является временем жизни памяти, указало на typeinfo:: имя ()?

В C++ я могу использовать typeid оператор для получения названия любого полиморфного класса:

const char* name = typeid( CMyClass ).name();

Сколько времени будет строка, на которую указывают возвращенным const char* указатель, доступный моей программе?

5
задан Nick Dandoulakis 21 January 2010 в 14:06
поделиться

2 ответа

Это немного сложно гарантировать, что значение будет соответствовать 4 байтому целым числу.

Так как вы используете 2005 - один способ - попытаться преобразовать значение в блоке попробовать / Catch. Это был бы лучший способ застраховать, что это на самом деле INT. Конечно, вам нужно обрабатывать случаи, когда он не находится в блоке Catch в соответствии с вашими требованиями.

Еще один способ просто тестировать только «цифры», так это:

, где Strval не относится к «% [^ 0-9]%»

, что будет пропустить -25. а также разрешить '99999999999999999999' Таким образом, вам может потребоваться включить дополнительные критерии с этим методом.

-121--2492511- [1126342511-

Если вы хотите разработать приложение Windows C ++, VB.NET или C # .NET VoIP, которое использует SIP и RTP, проверить SDK Media Media Engine Engine. Это не только библиотека SIP или медиа-библиотека RTP - она ​​обрабатывает все требования к вызовам VoIP. Этот VoIP SDK не является свободным или открытым исходным кодом. Вы лицензируете это от Ls.

Мы использовали LS SDK, когда мы разработали наш клиент Windows VoIP (SoftPhone), а также используют его на наших серверах VoIP Windows для завершения ствола PSTN. V5 SDK они испытали некоторые ошибки, но Media Engine Media «Release 6» отлично работал для нас.

Вот ссылка на их сайт и к LS VoIP SDK .

Мы использовали SDK в течение 3-4 лет. Бесплатная и платная поддержка LS-предложений очень хорошая. У меня также есть в хорошей власти, что они собираются предложить тот же SDK на Linux и Mac OS X Snow Leopard.

-121--3643344-

До тех пор, пока класс с RTTI существует. Так что если вы имеете дело с одним исполняемым исполнением - навсегда. Но для классов в динамической связи Librariy он немного сдвигается. Потенциально вы можете разгрузить его.

15
ответ дан 18 December 2019 в 09:07
поделиться

Память, возвращаемая Type_info :: name () , будет доступна для жизни приложения.

3
ответ дан 18 December 2019 в 09:07
поделиться
Другие вопросы по тегам:

Похожие вопросы: