-
2 votesanswersviews
指定容器类型的迭代器类型的部分特化
我有一个模板结构,它接受模板参数的Iterator类型 . 现在我需要为不同容器的迭代器专门化该类 . 我试过用std :: vector template<typename Iterator> struct AC { }; template<typename T, typename Alloc> struct AC<typename std::vector<... -
1 votesanswersviews
部分模板参数应用的部分模板专用化不适用于GCC 4.8.1
在我的基于策略的类的根目录是一个容器适配器,它提供了一个用于在不同容器之间进行转换的接口 . 它由类型T和模板模板参数Container参数化 . 为了使它与标准容器一起工作,我需要部分应用它们的一些参数,例如分配器或数组大小 . 我是这样做的: template< typename T > struct vector_{ using policy = std::vector<... -
2 votesanswersviews
cpp文件中的部分特化是不是“格式良好”
这是[问题]的后续行动:No generated code for explicitly specialized template even with explicit instantiation . 我在.cpp文件中使用部分特化来处理特殊情况,同时不强制所有代码进入头文件 . 下面给出了我正在做的一个简化示例 . 这适用于gcc和clang,但考虑到上面问题的答案,我想知道我是否只是幸运的是链... -
6 votesanswersviews
部分专业化时,基于C模板的“覆盖”等效?
我有一个模板类/结构,如下所示: template <typename T, typename U> struct S { unsigned int operator()(T t, U u) const; }; 我想确保专业化尊重这个界面 . 不幸的是,我可以使用不同的返回类型来专门化这个结构 . 例如,如果我部分专门返回 bool 而不是 unsigned int ,我希望... -
0 votesanswersviews
使用模板特化分割可变参数包
我正在尝试定义一种模板'map'原语(如map-reduce) . 我的想法是我想将一个函数应用于模板参数包的每个项目 . 该函数可以是任何可调用对象 . 它可以返回任何类型(虽然返回类型将被忽略),并且它可以在有问题的项目之上采取其他参数 . 棘手的部分是我有效地拥有两个需要处理的参数包 . 它们最初会被打包在一起,但我想使用模板特化来拆分它们 . 以下是我尝试这样做的尝试 . 如果不明显(由于... -
3 votesanswersviews
为模板参数限制定义某些外部模板类的部分特化
我有一个班Foo和 class 酒吧 . 它们是std :: array的包装器 . 它们都有一些派生类 . template<typename T, std::size_t N> struct Foo { std::array<T, N> data; }; template<typename T, std::size_t N> struct FooD... -
5 votesanswersviews
成员函数的部分特化[重复]
可能重复:使用部分模板专门化“无效使用不完整类型”错误 为什么我能做到这一点: template <typename T> struct A { void foo(int); }; template <> void A<int>::foo(int) { } 但不是这个: template <typename> struct C {};...