vs2010编译boost1.44中interprocess\detail\move.hpp的错误

6 篇文章 1 订阅
1>e:\code\company\sky_guide\open_common\cpplib\boost1_44\boost\interprocess\detail\move.hpp(342): error C2440: “return”: 无法从“boost::interprocess::shared_memory_object”转换为“boost::interprocess::shared_memory_object &&”
1>          无法将左值绑定到右值引用
1>          e:\code\company\sky_guide\open_common\cpplib\boost1_44\boost\interprocess\shared_memory_object.hpp(85): 参见对正在编译的函数 模板 实例化“boost::interprocess::shared_memory_object &&boost::interprocess::move<boost::interprocess::shared_memory_object&>(T)”的引用
1>          with
1>          [
1>              T=boost::interprocess::shared_memory_object &
1>          ]
1>e:\code\company\sky_guide\open_common\cpplib\boost1_44\boost\interprocess\detail\move.hpp(342): error C2440: “return”: 无法从“boost::interprocess::mapped_region”转换为“boost::interprocess::mapped_region &&”
1>          无法将左值绑定到右值引用
1>          e:\code\company\sky_guide\open_common\cpplib\boost1_44\boost\interprocess\mapped_region.hpp(159): 参见对正在编译的函数 模板 实例化“boost::interprocess::mapped_region &&boost::interprocess::move<boost::interprocess::mapped_region&>(T)”的引用
1>          with
1>          [
1>              T=boost::interprocess::mapped_region &
1>          ]
1>

1>生成失败。


解决方法:

此错误可能是boost1.44在vs2010上一个语法不支持导致的bug,网上解决方案为更新inprocess库版本来解决,或者直接用1.46或1.47版本boost的move.hpp文件替换1.44的



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值