In C++, what does the new keyword do ?
new
It allocates an instance of an object in heap memory and return it
It allocates an instance of an object in stack memory and return it
It allocates an instance of an object in stack memory and returns a pointer to it
It allocates an instance of an object in heap memory and returns a pointer to it