现在才知道TR1的错误在VC9的SP1中解决

来源:互联网 发布:java培训班4个月有用吗 编辑:程序博客网 时间:2024/06/05 20:15

作者:朱金灿
来源:http://blog.csdn.net/clever101/


      习惯了用boost库的function,今天使用VS2005+sp1编译一个程序,用到了std::function,结果出现了:error C2039: "function": 不是"std"的成员的错误,但是我已经#include <functional>了啊!


      上网搜了搜,初步判断是VS 2005并不支持std::function。于是安装了VS 2008,再次编译,还是出现编译错误:"function": 不是"std"的

成员。将std::function改为std::tr1::function也不行。


      再次上网搜索,才发现TR1的错误在VC9的SP1中解决。请参考:
TR1 Fixes In VC9 SP1


      作者还这样说:tr1::function can now store function objects with non-const function call operators. (This was a severe problem.)


      VS 2005就已经能支持boost::function了,可见微软的STL不是一般的水,看来改天要试试STLport。另外在网上std::function貌似用得还不如boost::function多。


原创粉丝点击