我们可以在C中重载`==`运算符来比较两个字符串吗?
发布时间:2020-12-16 10:13:01 所属栏目:百科 来源:网络整理
导读:如果我们想在不使用strcmp()函数的情况下比较两个字符串,那么我们可以重载==运算符来比较两个字符串吗? 解决方法 我想你的意思是用c风格的字符串重载operator ==,然后答案是否定的. operator overloading应该用于为用户定义类型的操作数定制运算符. 从标准,
如果我们想在不使用strcmp()函数的情况下比较两个字符串,那么我们可以重载==运算符来比较两个字符串吗?
解决方法
我想你的意思是用c风格的字符串重载operator ==,然后答案是否定的.
operator overloading应该用于为用户定义类型的操作数定制运算符.
从标准,$13.5 / 6重载运算符[over.oper](强调我的)
请注意,如果您的意思是 编辑 如果你想为自己的班级重载它,那很好.如 Class X { //... }; bool operator==(const X& lhs,const X& rhs) { // do the comparison and return the result } 然后 X x1,x2; //... if (x1 == x2) { //... } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |