C++ Программирование в среде С++ Builder 5

         

Указатели типа void*


В языке С значение типа void* можно непосредственно присваивать переменной-указателю любого типа, без каких-либо приведений. В C++ это не допускается. Другими словами, код вроде

SomeStruct *sPtr;

void AllocBuffer(int n)

{

sPtr = malloc(n * sizeof(SomeStruct));

}

вызовет ошибку в C++. Необходимо явное приведение типа указателя:

sPtr = (SomeStruct *)malloc(n * sizeof(SomeStruct));



Содержание раздела