www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.learn - How do you do a typeid(obj) to get the most derived class that it is,

reply Enjoys Math <enjoysmath gmail.com> writes:
class A {

}

class B : A {

}

class C : B {

}

auto b = new B();

typeid(b) == "B"

?

Thanks.
Feb 01 2016
parent =?UTF-8?Q?Ali_=c3=87ehreli?= <acehreli yahoo.com> writes:
On 02/01/2016 10:20 PM, Enjoys Math wrote:
 class A {

 }

 class B : A {

 }

 class C : B {

 }

 auto b = new B();

 typeid(b) == "B"

 ?

 Thanks.
class A { } class B : A { } class C : B { } void main() { auto b = new B(); assert(typeid(b) == typeid(B)); // Or, if you have the type without an object (e.g. in templated code) assert(typeid(typeof(b)) == typeid(B)); } Ali
Feb 01 2016