Run-time reflection for class inheritance
Michael Green
abc.mikey at gmail.com
Mon Dec 2 17:50:49 UTC 2019
On Sunday, 1 December 2019 at 14:42:46 UTC, Adam D. Ruppe wrote:
> You can get the type at runtime by simply casting it...
>
> if(auto c = cast(EventSocket) event) {
> // is an event socket
> }
Thanks.
I guess you need to be careful about which order you do those
tests so as not to cast to more general types before testing for
specific ones.
I also came up with
```
if (typeid(event) == typeid(EventTimer)) {
// do something
}
```
The reason I was leaning toward the first one is that it could be
put in a switch as it's just string compares.
I guess having it cast as part of the check is useful.
More information about the Digitalmars-d-learn
mailing list