Добрый день!
Почему работает этот код? trash это указатель, который указывает на мусор - по идее при вызове trash->f() должно упасть. Но f() успешно вызывается. Есть предположение, что функции глобальны и связываются с классами только через this.
struct A
{
void f() { std::cout << "Hello, world!" << std::endl };
};
void main()
{
A * trash;
trash->f();
}