今天心血来潮更新了一下机器上的ubuntu,装了14.04版本,原来是32位的,换成64的之后感觉是快了不少(加了内存)。因为不少软件没做备份,包括eclipse,所以只得重装,重装之后的麻烦事儿就是配置了。记得在ubuntu12那会儿,我装的eclipse c++版本是一开始没法解析c++的标准库文件,还得自己在项目中手动添加才行,就像pthread库也非得自己下载自己手动添加一样,挺麻烦的,那会儿还不大愿意用,虽然不是啥技术问题,但是当年还真是影响到了大片人。现在版本更新之后好像已经解决这个问题了,用着还挺顺手。

但是一个比较烦人的是g++带的库里memory头文件一直是不能直接提供shared_ptr你使用的,估计为了兼容不支持c++11的那拨,做了一些处理,想要使用还是得用tr1里的。因为我不大喜欢这个别扭的名字,所以一直琢磨着给整正常了(直接用memory里包含的版本)。


接着照着以前的做法,给项目属性里的Path and Symbol加上了

GXXEXPERIMENTALCXX0X

结果发现并未成功,一查新下载的g++的版本,得嘞,4.8.2,之前用的是4.7,想必是代码变了模样了,于是追到memory这儿一看:

#include <bits/stl_algobase.h>
#include <bits/allocator.h>
#include <bits/stl_construct.h>
#include <bits/stl_uninitialized.h>
#include <bits/stl_tempbuf.h>
#include <bits/stl_raw_storage_iter.h> #if __cplusplus >= 201103L

include <exception> // std::exception

include <typeinfo> // std::type_info in get_deleter

include <iosfwd> // std::basic_ostream

include <ext/atomicity.h>

include <ext/concurrence.h>

include <bits/functexcept.h>

include <bits/stl_function.h> // std::less

include <bits/uses_allocator.h>

include <type_traits>

include <functional>

include <debug/debug.h>

include <bits/unique_ptr.h>

include <bits/shared_ptr.h>

if _GLIBCXX_USE_DEPRECATED

include <backward/auto_ptr.h>

endif

#else

include <backward/auto_ptr.h>

#endif

果然代码相较于4.7版本的变了模样,这里我们可以看到,根据条件编译命令所指示的信息,我们必须让__cplusplus宏的值大于等于201103L,于是再次回到

Project->Properties->C++ General->Pahts and Symbols->Symbols(选项卡)

增加_cplusplus Symbol然后设置值为201103L,重新编译项目之后即可使用memory提供的sharedptr.

后来逛stackoverflow(为什么没有约定俗称的中文名?比如栈溢出,打英文的很累呢!θ\(;¬_¬))发现也有不少人在问类似的问题,嗯。。这方面,Windows平台省不少事,话说平胸而论,cl在windows上(或者说visual studio上)对c/c++的支持灵活很多,管它其他的呢,我用着舒坦啊,但是,我还是很爱Linux平台的(〝▼皿▼) 。

解决eclipse无法解析shared_ptr的更多相关文章

  1. 解决域名DNS解析的故障

    在实际应用过程中可能会遇到DNS解析错误的问题,就是说当我们访问一个域名时无法完成将其解析到IP地址的工作,而直接输入网站IP却可以正常访问,这就是因为DNS解析出现故障造成的.这个现象发生的机率比较 ...

  2. 解决eclipse中自带的maven搜索不到非本地第三方包问题

     解决eclipse中自带的maven搜索不到非本地第三方包问题   版权声明:本文为博主原创文章,未经博主允许不得转载. 最近使用eclipse中的maven插件时发现,在pom.xml文件中添加第 ...

  3. 解决Eclipse中文乱码 - 技术博客 - 51CTO技术博客 http://hsj69106.blog.51cto.com/1017401/595598/

    解决Eclipse中文乱码 - 技术博客 - 51CTO技术博客  http://hsj69106.blog.51cto.com/1017401/595598/

  4. Eclipse 在ubuntu桌面显示快捷启动以及解决Eclipse 在ubuntu中点击菜单栏不起作用的原因.

    要在Eclipse中设置好之后,可以通过如下方式在周末显示快捷启动以及解决Eclipse在ubuntu高版本中点击菜单栏项不显示列表的问题 在usr/share/app-install/desktop ...

  5. 彻底解决Eclipse自动补全变量名及变量名后面追加类型名

    彻底解决Eclipse自动补全变量名问题的方法步骤 发布于 2014-11-04 14:53   已被阅读 31613159 次 大家使用eclipse或者MyEclipse敲代码的时候,是不是都被这 ...

  6. 解决eclipse spring配置报错:cvc-elt.1: Cannot find the declaration of element

    解决eclipse spring配置报错:cvc-elt.1: Cannot find the declaration of element 'beans'.Referenced file conta ...

  7. 解决JSP 不解析EL表达式

    解决JSP 不解析EL表达式,jsp在使用EL表达式的时候发现它不被解析,而是直接以字符串的形式显示了出来,经过查阅资料和实践,终于得知了原因并找到了解决方案 原因是:在默认情况下,Servlet 2 ...

  8. 解决eclipse中出现Resource is out of sync with the file system问题

    解决eclipse中出现Resource is out of sync with the file system问题 . 分类: 嵌入式开发平台和环境相关 2011-12-27 16:18 4872人 ...

  9. 解决eclipse闪退的办法

    Eclipse Java EE 便出现打开闪退的现象. 修改eclipse.ini无效,参照了网上许多方法也不行. 最后发现了一个蛋疼的方法: 1.打开eclipse的workspace目录 2.删除 ...

随机推荐

  1. PHP ReflectionClass

    <?php /** * @desc test reflectionclass * @author songweiqing * @create_time 2015-01-7 * */ class ...

  2. project euler 26:Reciprocal cycles

    A unit fraction contains 1 in the numerator. The decimal representation of the unit fractions with d ...

  3. google浏览器翻译失败解决方案

    用记事本打开 C:\Windows\System32\drivers\etc下hosts文件 在文件末尾加入如下两行 203.208.46.145 translate.google.com 203.2 ...

  4. javascript之url转义escape()、encodeURI()和decodeURI()

    我们可以知道:escape()除了 ASCII 字母.数字和特定的符号外,对传进来的字符串全部进行转义编码,因此如果想对URL编码,最好不要使用此方法.而encodeURI() 用于编码整个URI,因 ...

  5. C# 语法技巧_三目运算_switch_case

    一.三目运算符 三目运算符的一种简便写法: bool b = str == "abc" ? false : true; 当是自身时,实际上别吝啬那一个括号,有一个括号,实际上更容易 ...

  6. WPF控件中可以用来记录数据用的属性总结

    今天遇到一个问题需要为每个控件tooltip根据不同情况显示多组数据,于是需要用到控件的某个属性暂存这个数据.好吧,现在我找到了3个属性可用,给自己做个备忘. 1.Tag 这个属性是object类型 ...

  7. 弄明白Android 接口回调机制

    以前对于这个机制理解不够深刻,现在重新整理下思路. 一.建模 我理解的接口回调就是,我这个类实现了一个接口里的方法doSomething,然后注册到你这里,然后我就去做别的事情去了,你在某个触发的时机 ...

  8. bzoj1641 [Usaco2007 Nov]Cow Hurdles 奶牛跨栏

    Description Farmer John 想让她的奶牛准备郡级跳跃比赛,贝茜和她的伙伴们正在练习跨栏.她们很累,所以她们想消耗最少的能量来跨栏. 显然,对于一头奶牛跳过几个矮栏是很容易的,但是高 ...

  9. python多线程同步

    python多线程同步 作者:vpoet 日期:大约在夏季 import threading import time mylock = threading.RLock() num=0 class my ...

  10. Poj 2187 Beauty Contest_旋转凸包卡壳

    题意:给你n个坐标,求最远的两点距离 思路:用凸包算法求处,各个定点,再用旋转凸包卡壳 #include <iostream> #include <cstdio> #inclu ...