|
Дополнения Преобразование типов в C++ |
|
|
|
|
Автор: Administrator
|
|
07.01.2010 16:06 |
|
Преобразования типов достаточно распространены в программировании на C. Хотя и не так часто, они все еще нужны в C++. Стандартная запись C вида (int) var, к сожалению, не _слишком ясна, так как она не определяет причины приведения. Точно определяя цель приведения, компилятор может помочь вам проверить код. Для облегчения обнаружения ошибок и более легкого ориентирования в программном коде C++ предоставляет новую форму записи, которая определяет цель приведения типов: - reinterpret_cast<тип> (выражение). При использовании этой записи те же биты данных трактуются как представители нового типа. Она применяется, в основном, для приведения типа указателей, например, так: - static_cast<тип> (выражение). Эта запись заставляет компилятор осуществить стандартное преобразование, такое как static_cast - const_cast<тип> (выражение). Подобная запись изменяет принадлежность выражения к типам const или volatile. Заметим, что это единственная новая возможность приведения, которая может использоваться - dynamic_cast<тип> (выражение). Данная запись преобразует указатель на объект в указатель на совместимый объект. Корректность этого преобразования динамически проверяется во время выполнения. Это наименее распространенная из новых форм записей приведения.
|
|
Обновлено 07.01.2010 16:09 |