怎的去掉vs2010的stl
怎样去掉vs2010的stl啊下载了份sgi stl想把微软的给去掉,直接用sgi的C/C++ code调试sgi stl, 代码放在d:\s
怎样去掉vs2010的stl啊
下载了份sgi stl
想把微软的给去掉,直接用sgi的
C/C++ code调试sgi stl, 代码放在d:\stl\include\sgi下解决方案下的 "工程"的属性 "vc++目录", "包含目录"选项为:D:\stl\include另外:c/c++ 附加包含目录 D:\stl\include头文件使用:#include <sgi/iostream> #include <sgi/vector> #include <sgi/string> #include <sgi/functional>#include <sgi/vector>using namespace std;class Book{public: void print(int a){}};int main(){ vector<Book>v; v.reserve(20); int i; for(i=0; i<20;i++) v.push_back(Book()); for_each(v.begin(),v.end(),bind1st(mem_fun_ref(&Book::print),20)); }结果错误就来了 无法打开包括文件:“stl_range_errors.h”: No such file or directory
[解决办法]for_each我记得是在algorithm里的,你试试加上<sgi/algorithm>。
stl都是模板函数或者类。。只需包含头文件即可。。。你倒是不用担心vs2010本身的stl的问题
[解决办法]http://kb.cnblogs.com/a/2321319/
http://blog.csdn.net/shellching/article/details/7408192
[解决办法]Vc2010的stl实现得很好,你干嘛要替换?瞎折腾?
[解决办法][解决办法]stl的fun_ref都是玩具。
如果你想搞点上台面的functor用法,就去用C++2003tr1的bind,vc2010已经自带。
[解决办法]别乱囧了。bind出自boost,被加入tr1,然后进入C++2011标准。
vc2010自带tr1。vc2011带C++2011。都不需要再加装boost。
[解决办法]1、GCC编译器所用的是SGI STL;
2、for_each用#include <algorithm>包含。