error: ‘shared_ptr‘ in namespace ‘std‘ does not name a type

举报
墨理学AI 发表于 2022/01/11 00:15:31 2022/01/11
【摘要】 make install 安装时编译代码遇到的错误: warning: non-static data member initializers only available with -std=c++...
  • make install 安装时编译代码遇到的错误:

warning: non-static data member initializers only available with -std=c++11 or -std=gnu++11 [enabled by default]
         float confidence = 0;


error: 'shared_ptr' in namespace 'std' does not name a type


  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 解决方法:

这是因为要使用C++11的标准编译,修改方法是在CMakeLists.txt文件里面添加:

set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS}  -std=c++0x")

或者

set (CMAKE_CXX_STANDARD 11)


  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

其它可能报错:

error: 'ceil' is not a member of 'std'

或者 
error: 'floor' is not a member of 'std'



  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 解决方法,添加 头文件
#include <cmath>  

  
 
  • 1

文章来源: positive.blog.csdn.net,作者:墨理学AI,版权归原作者所有,如需转载,请联系作者。

原文链接:positive.blog.csdn.net/article/details/114582904

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。