小编fid*_*ido的帖子

`enable_shared_from_this`的用处是什么?

我在enable_shared_from_this阅读Boost.Asio示例时跑了过来,在阅读完文档之后,我仍然因为如何正确使用它而迷失了方向.有人可以给我一个例子和/或说明何时使用这个课程是有道理的.

c++ boost tr1 boost-asio

332
推荐指数
4
解决办法
8万
查看次数

模板C++类声明中的类型/值不匹配

我正在尝试使用gcc 4.2在Linux上编译以下代码:

#include <map>
#include <list>

template<typename T>
class A
{
...

private:
    std::map<const T, std::list<std::pair<T, long int> >::iterator> lookup_map_;
    std::list<std::pair<T, long int> > order_list_;

};
Run Code Online (Sandbox Code Playgroud)

当我编译这个类时,我从gcc收到以下消息:

error: type/value mismatch at argument 2 in template parameter list for ‘template<class _Key, class _Tp, class _Compare, class _Alloc> class std::map’
error:   expected a type, got ‘std::list<std::pair<const T, long int>,std::allocator<std::pair<const T, long int> > >::iterator’
error: template argument 4 is invalid
Run Code Online (Sandbox Code Playgroud)

我删除了文件名和行号,但它们都引用了声明地图的行.

当我用int或某些具体类型替换这些表达式中的对时,它编译得很好.有人可以向我解释我做错了什么.

c++ templates

11
推荐指数
1
解决办法
1万
查看次数

标签 统计

c++ ×2

boost ×1

boost-asio ×1

templates ×1

tr1 ×1