1、编译器只分配用于保存数据的内存,代码则被放在内存的公用区,可以为所有的对象共享。 2、既然为共享,那么C++如何区分是该类的哪个对象在操作呢,通过THIS指针实现. 3、可以通过下面方法,避免同一对象的赋值 void ctest::assign(ctest &t) { if (this==&t) { //为同一对象赋值 } else { //可以正常赋值 } }