Я хочу ограничить, что Derived Class должен иметь конструктор по умолчанию. Сейчас я думал его в искаженном видеConstraint - Derived Class должен иметь конструктор по умолчанию
template <typename Derived>
class Base{
public:
Base(){
}
virtual ~Base(){
new Derived;
}
};
Другая идея приходит в голову держать метод чисто виртуальной создания() без аргументов.
Но есть ли другой способ? Кроме этих двух. Я думаю об этом на языке C++. Но есть ли способ сделать это в PHP (я ожидаю negetive ответ LOL)
_Why_ Вы хотите это сделать? –
['~ Base()' должно быть либо виртуальным, либо защищенным] (http://www.gotw.ca/publications/mill18.htm), и, как оно написано сейчас, оно утечки объекта 'Derived', и вы можете ' t уничтожить этот объект, потому что вы закончите бесконечный цикл, создавая и уничтожая объекты в деструкторе. –
Причина, по которой эти производные классы будут автоматически создаваться с помощью UnPackerMachine <> –