reinterpret_cast в C ++ | Операторы приведения типов

Опубликовано: 31 Декабря, 2021

reinterpret_cast - это тип оператора приведения, используемый в C ++.

  • Он используется для преобразования одного указателя в другой указатель любого типа, независимо от того, связаны ли классы друг с другом или нет.
  • Он не проверяет, совпадают ли тип указателя и данные, на которые указывает указатель.

Синтаксис:

data_type * var_name = 
       reinterpret_cast <data_type *> (указатель_переменная);

Тип возврата

  • У него нет возвращаемого типа. Он просто преобразует тип указателя.

Параметры

  • Он принимает только один параметр, то есть переменную указателя источника (p в примере выше).
// CPP program to demonstrate working of
// reinterpret_cast
#include <iostream>
using namespace std;
int main()
{
int * p = new int (65);
char * ch = reinterpret_cast < char *>(p);
cout << *p << endl;
cout << *ch << endl;
cout << p << endl;
cout << ch << endl;
return 0;
}
Выход:

65
A
0x1609c20
A
C++