On Friday, 8 March 2013 at 19:58:10 UTC, H. S. Teoh wrote:
On Fri, Mar 08, 2013 at 08:52:21PM +0100, Rob T wrote:On Friday, 8 March 2013 at 06:05:02 UTC, Maxim Fomin wrote: > catch (Exception e) { > if (typeid(e) == typeid(myException1)) > throw e; // may be downcasted, if necessary > // to work with specific fields > }Isn't it better to check identity in this way? if (typeid(e) is typeid(myException1))[...] Couldn't you just do this? auto myExc = cast(myException1)e; if (myExc !is null) { // do stuff with myExc } ? Or am I missing the point here? T
I didn't know that casting a base class to a derived class that the base does not refer to will resolve to a null. Nice to know.
I suppose that's another way to do the same thing which may be more convenient depending the situation.
Thanks for suggesting it. --rt
