在运算符重载的上下文中,用户定义的转换和用户定义的运算符有什么区别?
最佳答案
用户定义的转换是:
- 目标类型中的构造函数,可以使用源类型的单个参数调用(如果它们具有默认值,则可以存在更多参数)
或
- 源类型的非静态成员函数,名称为
operator DESTTYPE()
如您所见,第二个选项使用 operator
关键字,就像重载传统运算符时所用的一样。
(注意:所有这些都在 C++ 标准的 [class.conv]
部分中进行了正式描述。)
关于c++ - 用户定义的转换和用户定义的运算符有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5201824/