H. Sock H. Sock - 1 month ago 5
C++ Question

C++ Casting a pointer in a new?

I have this line of code which I cannot make sense of.

ClassA *pointer= new( ( char* )BASE_ADDRESS)ClassA ;


What does this cast
( ( char* )BASE_ADDRESS)
even mean?

BASE_ADDRESS
is some memory location.

Answer

This is called placement new. It constructs an object of type ClassA and puts it in the memory location specified by BASE_ADDRESS.