Typeid funktioniert nicht richtig

Ich kann die Typ-ID-Funktion nicht korrekt erhalten. Vermisse ich etwas?

Code:

class A
{
     public:
     int a1;
     A()
    {
    }
};


class B: public A
{
    public:
    int b1;
    B()
    {
    }
};


int main()
{
     B tempb;
     A tempa;
     A * ptempa;
     ptempa = &tempb;

     std::cout << typeid(tempb).name() << std::endl;
     std::cout << typeid(tempa).name() << std::endl;
     std::cout << typeid(*ptempa).name() << std::endl;

     return 0;
}

Es wird immer gedruckt:

Klasse B Klasse A Klasse A

Ich benutze VS2010 für mein Projekt

Antworten auf die Frage(3)

Ihre Antwort auf die Frage