скольку он единственный, что в

Автор admin Суббота, 20 июня 2009 11:32

скольку он единственный, что видит и с чем взаимодействует клиентский код. При каждом порождении нового производного типа от Shape необходимо включить процедуру создания этого типа в одном месте, внутри виртуального конструктора в базовом классе Shape. Сделать это несложно, но при этом возникает нежелательная зависимость между классом Shape и всеми классами, производными от него. В этом примере информация о создаваемом типе передается виртуальному конструктору в виде строки с именем типа. Тем не менее, в вашей схеме может использоваться другой способ, например в парсере виртуальному конструктору может передаваться результат работы лексического сканера, и на основании этой информации парсер решает, какую лексему следует создать. Виртуальный конструктор Shape(type) может определяться лишь после объявления всех производных классов. Конструктор по умолчанию может быть определен в классе Shape, но его следует объявить защищенным, чтобы предотвратить создание временных объектов Shape. Конструктор по умолчанию вызывается только конструкторами объектов производных классов. Он должен определяться явно, потому чт


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