ся указатель PRect, может возн

Автор admin Воскресенье, 17 мая 2009 11:32

ся указатель PRect, может возникнуть проблема. Компилятор не способен определить, на какой тип объекта указывает PRect, до тех пор пока программа не начнет выполняться, и поэтому он всегда генерирует вызов версии CRectangle::DrawO, определенной в классе CRectangle, поскольку указатель PRect объявлен как указатель на объект класса CRectangle. Допустим, указатель PRect содержит адрес объекта Rect, являющегося экземпляром класса CRectangle. CRectangle *PRect; Rectangle Rect; // … PRect – &Rect; В данном случае применение указателя PRect будет инициировать вызов версии DrawO, определенной в классе CRectangle. PRect->DrawO; 484 Приложение А. Основы программирования на языке С++ Предположим теперь, что указатель PRect содержит адрес экземпляра класса CFi 11-Rectangle. CRectangle *PRect; CFillRectangle FillRect; // … PRect – & FillRect; При использовании этого указателя для вызова функции-члена CFillRectangle:: DrawO программа будет по-прежнему вызывать версию CRectangle::DrawO, определенную в классе: PRect->Draw(); В результате получится вызов версии функции CRectangle::DrawO, создающей прозрачный, а не с


Комментарии закрыты.