Вызов невиртуального метода происходит, грубо говоря, по заранее известному адресу, только неявно передается первый аргумент this=NULL. В этом же примере, если "void milk()" заменить на "virtual void milk()", то будет segmentation fault, поскольку вызов метода через VMT пойдет через нулевой указатель. Цитирование стандартов - это немного буквоедство, надо просто представлять, как эта дрянь работает. :-)
no subject
Date: 2012-08-18 07:08 pm (UTC)