You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

默认友元operator==时出现异常说明符不一致错误

解决方法

这个错误的核心是函数声明与定义的异常说明符不一致:头文件里的operator==声明没有noexcept,但你在友元声明里加了这个修饰,C++不允许这种不匹配。

直接修改你的代码,去掉noexcept即可:

friend bool operator==(playing_card const&, playing_card const&) = default;

补充说明:默认生成的operator==本身会自动带有noexcept属性(前提是类中所有成员的operator==都是noexcept的),所以不需要手动添加。保持和头文件声明完全一致就能解决问题。

内容的提问来源于stack exchange,提问作者mariacat

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.30 10:52:02