error C2665: “boost::operator !=”: 4 个重载中没有一个可以转换所有参数类型

手心的水 2015-03-12 07:34:24
#define LUABIND_OPERATOR_ADL_WKND(op) \
inline bool operator op( \
basic_iterator<basic_access> const& x \
, basic_iterator<basic_access> const& y) \
{ \
return boost::operator op(x, y); \
} \
\
inline bool operator op( \
basic_iterator<raw_access> const& x \
, basic_iterator<raw_access> const& y) \
{ \
return boost::operator op(x, y); \
}
//错误指向以下两行
LUABIND_OPERATOR_ADL_WKND(==)
LUABIND_OPERATOR_ADL_WKND(!=)

错误信息如下
error C2665: “boost::operator !=”: 4 个重载中没有一个可以转换所有参数类型
15> D:\boost_1_57_0\boost/function/function_base.hpp(756): 可能是“bool boost::operator !=(boost::detail::function::useless_clear_type *,const boost::function_base &)”
15> D:\boost_1_57_0\boost/function/function_base.hpp(744): 或 “bool boost::operator !=(const boost::function_base &,boost::detail::function::useless_clear_type *)”
15> D:\boost_1_57_0\boost/function/function_base.hpp(827): 或 “bool boost::operator !=<luabind::detail::basic_iterator<luabind::detail::basic_access>>(Functor,const boost::function_base &)”
...全文
812 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
百曉生 2015-03-12
  • 打赏
  • 举报
回复
提供转换运算符。 使用显式转换。 https://msdn.microsoft.com/zh-cn/library/c8ft1y6y%28v=vs.90%29.aspx

64,636

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧