c++ - converting a base class pointer to a derived class pointer
问题 #include <iostream> using namespace std; class Base { public: Base() {}; ~Base() {}; }; template<class T> class Derived: public Base { T _val; public: Derived() {} Derived(T val): _val(val) {} T raw() {return _val;} }; int main() { Base * b = new Derived<int>(1); Derived<int> * d = b; cout << d->raw() << endl; return 0; } I have some polymorphism problem right now and the code above summarizes everything. I created a Base class pointer and I put the pointer of a new derived template class in