创建并初始化对象,以及类型转换(比如隐式类型转换),以及填充虚表指针
构造函数仅能被创建一次(一般情况,除了使用定位new)
空间创建(由系统开辟,构造函数并不能开辟空间),但并不意味着
该空间处的对象已经存在。但是对象已经存在,则其空间一定是存在的
定位new是在已经存在的空间中再次创建对象,比如
new (&b) T(...)
这句话的意思是在b的对象空间处创建一个T类型的对象。
隐式类型转换和显示类型转换
两者在C/C++中都会存在临时量的情况(隐式对象、隐式变量等)
隐式类型转换只能在只有一个参数的转换例程才能工作。
如构造函数:T(int )
T obj=8 ;//ok
T obj=(T)8;//ok
T obj
哪些混蛋可以修改对象的虚表指针?
构造、复制构造、析构。复制赋值不能修改虚表指针