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