Child类为例,在编译器中,可以将子类对象退化为父类对象,从而实现子类来初始化父类,比如:
Parent p1(Child()); //Child()构造函数会返回一个临时对象,从而通过子类初始化父类...答:
其实编译器对函数模板进行了两次编译
第一次编译时,首先去检查函数模板本身有没有语法错误
第二次编译时,会去找调用函数模板的代码,然后通过代码的真正参数,来生成真正的函数。...(需要C++11支持)
带有引用计数机制,支持多个指针对象指向同一片内存(实现共享)
提供swap()成员函数,用来交换两个相同类型的对象指针地址
提供unique()成员函数, 判断该指针对象地址是否被其它指针对象引用...29.Qt中的智能指针
-QPointer
当其指向的对象被销毁时,本身会自动赋值为NULL(从而避免被多次释放和野指针)
缺点在于,该模板类析构时,不会自动摧毁所指向的对象(需要手工delete)...-QSharedPointer
带有引用计数机制,支持多个指针对象指向同一片内存(实现共享)
可以被自由地拷贝和赋值
当引用计数为0(最后一个指针被摧毁)时,才删除指向的对象(和shared_ptr类似