В C++ (int)ch эквивалентно int(ch).
Если нет, то какая разница?
Решение проблемы
Они то же самое, а также то же самое, что и (int)(ch)
. В C++ обычно предпочитают использовать именованное приведение, чтобы прояснить ваши намерения:
static_cast
для приведения типов примитивов разного размера или знака, например static_cast<char>(anInteger)
.dynamic_cast
для приведения базового класса к производному классу (только для полиморфных типов), например dynamic_cast<Derived *>(aBasePtr)
.reinterpret_cast
для приведения между указателями разных типов или между указателем и целым числом, например reinterpret_cast<uintptr_t>(somePtr)
.const_cast
, чтобы удалить квалификаторы const
или volatile
из переменных ( ОЧЕНЬ ОПАСНО ), например const_cast<char *>(aConstantPointer)
.
Комментариев нет:
Отправить комментарий