dlang-book/06-классы-объектно-ориентир.../src/chapter-6-4-5/app.d

32 lines
458 B
D

class Widget
{
this(Widget source)
{
}
Widget duplicate()
{
return new Widget(this); // Вы­де­ля­ет па­мять и вы­зы­ва­ет this(Widget)
}
}
class TextWidget : Widget
{
this(TextWidget source)
{
super(source);
}
override TextWidget duplicate()
{
return new TextWidget(this);
}
}
void main()
{
TextWidget tw;
TextWidget clone = tw.duplicate();
}