大家好:
      现在的程序中用到了map及list等容器来储存操作数据,但是可能由于使用不当等原因,效率还需要提高,于是上网看见有人说SGI STL效率相对好一些,就想下载来试试。
     这些发现了问题,VC中本来使用的map,list等是在安装目录中就有库或头文件的,请问这是哪一个版本的?是vc自己实现的STL吗?
如果我想使用我刚下载的SGI的STL该怎么设置?让程序默认使用它,因为都是同名的。

解决方案 »

  1.   

    把SGI的STL的头文件 库文件等 设置到你的环境里然后用SGI的命名空间调用他的容器还有包含头文件时也指定到SGI得
      

  2.   

    我现在已经设置好SGI STL在工程中使用了,我把它导入程序的使用库并使其优先级高于VC中本来的STL。
    但是我编译程序的时候SGI STL中居然报错,一开始是运算符重载报错,在stl_relope.h(好像这样拼的)中,由于我没有使用这个容器,索性我就把这个头文件注释掉了,然后是其他的头文件中居然引用了这个库中没有的头文件,这下我就不知道怎么办了。即使我把哪个没有的头文件引用注释掉,还是会报错。
      我怀疑是我下载的这个STl库有问题。就在CSDN下载的。
      请问谁有使用正常的SGI 的STL库?这个是不是要不VC中自带的哪个效率稍微高点呢?
      还有谁有一些高效使用这些STL的建议或资料?
      目前我在看Effective STL。不过里面说的很广,我就只用list和map,觉得应用关联不大。
      最后请问hash_map是不是会比map效率快些?
     因为我需要频繁的在map中查找数据。