函数模板必须由编译器根据程序员的调用类型实例化为可执行的函数。
类模板的成员函数都是函数模板
没使用过的成员函数(即函数模板)不会被实例化
dynamic_cast将一个基类对象指针(或引用)cast到继承类指针,dynamic_cast会根据基类指针是否真正指向继承类指针来做相应处理, 即会作一定的判断。 对指针进行dynamic_cast,失败返回null,成功返回正常cast后的对象指针; 对引用进行dynamic_cast,失败抛出一个异常,成功返回正常cast后的对象引用。 reinterpret_cast这个转换是最“不安全”的,两个没有任何关系的类指针之间转换都可以用这个转换实现。 static_cast静态转换是最接近于C风格转换,很多时候都需要程序员自身去判断转换是否安全。 const_cast这个转换好理解,可以将常量转成非常量