同样的 “=”一样吗?比如以下代码: Test arr1=12; 和 Test arr2; arr2=15; 二者其实不一样,前者调用默认的构造函数,后者调用赋值运算符重载的函数。 一般我们会用explict关闭默认构造函数的自动类型转换功能,以免出现意料之外的错误。关闭以后,如果要调用arr2=15这样子的语句,就要自己实现int转换重载。更安全严谨一些