Is it possible to call a parent's destructor?
Adam D. Ruppe
destructionator at gmail.com
Sat Jan 11 10:45:56 PST 2014
On Saturday, 11 January 2014 at 18:38:22 UTC, Gary Willoughby
wrote:
> Is it possible to call a parent's destructor? If so what's the
> syntax?
Parent destructors are called automatically:
import std.stdio;
class Foo {
~this() { writeln("Foo.dtor"); }
}
class Bar : Foo {
~this() { writeln("Bar.dtor"); }
}
void main() {
auto f = new Bar();
}
$ ./test500
Bar.dtor
Foo.dtor
But if you want to do it explicitly, you can with "super.__dtor();
class Bar : Foo {
~this() {
writeln("Bar.dtor");
super.__dtor();
}
}
Notice that it is still called automatically, so it goes twice:
Bar.dtor
Foo.dtor
Foo.dtor
More information about the Digitalmars-d-learn
mailing list