tha*_*sme 5 c++ operator-overloading
我想知道在我的班级中定义operator ==时是否自动提供operator!=?当我在A类中定义了operator ==时,显然A a,A b,a == b有效,但是a!= b则没有.但是我不确定它是否总会发生.这有什么例外吗?
Mik*_*our 11
不,操作员(除了分配)永远不会自动生成.根据以下方面定义它很容易==:
bool operator!=(A const & l, A const & r) {return !(l == r);}
Run Code Online (Sandbox Code Playgroud)
运营商!=是不会自动为您提供.如果您想要这样的自动化,您可能想要阅读有关rel_ops命名空间的信息.基本上你可以说
using namespace std::rel_ops;
Run Code Online (Sandbox Code Playgroud)
在使用之前operator !=.
| 归档时间: |
|
| 查看次数: |
3134 次 |
| 最近记录: |