¿Cómo es posible que el acceso a nullptr funcione? [duplicar

Esta pregunta ya tiene una respuesta aquí:

¿Por qué puedo hacer una llamada a una función utilizando un puntero de clase no válido? 6 respuestas Método de clase de llamada a través del puntero de clase NULL [duplicado] 10 respuestas

Tengo una clase simple:

class B
{
public:
    int getData() { return 3; }
};

then, inicializo un puntero con nullptr:

B *foo{ nullptr };

Y luego, tratando de usarlo, viene la sorpresa:

int t = foo->getData();

and t es ahora 3. ¿Cómo es eso posible sin construir la clase? ¿Es porque getData () no usa "esto"? Eso rompió todo mi conocimiento sobre los punteros.

¿Es ese comportamiento esperado? Estoy trabajando en Visual Studio 2013.

Respuestas a la pregunta(3)

Su respuesta a la pregunta