myClassA temp=4;这一句是在对象声明的时候就“赋值”,这时编译器会直接匹配最佳的类型转换构造函数(也就是单参数的构造函数),又右值的类型是int,正好与myClassA::myClassA(int)匹配成功。这个解释我记得是在C++ Primer Plus上看到的。myClassAtemp(myClassA (4));经实验,这句话只会调用int类型参数的构造函数。我们有理由认为是编译器优化了:因为中间构造的临时变量,到后来其实并不会存在,因此编译器没理由浪费一次复制操作。而且下面更进一步的实验更有力地证明了这个结论:#include using namespace std;//myclass.h//#pra...