因为拷贝构造函数是放在本身这个类里的,而类中的函数可以访问这个类的对象的所有成员,当然包括私有成员了。 String(const String &other) { m_data=other.x;//x是String类的私有成员 } 引用参数对象也是String类的,所以没问题