template-specialization

    4热度

    1回答

    我试图定义一个构造函数的类定义之外的明确专门的类模板,像这样的: template <typename T> struct x; template <> struct x<int> { inline x(); /* This would have compiled: x() { } */ }; template <> // Erro

    11热度

    3回答

    说我有一个模板类: template <typename T> class foo { void do_someting(T obj) { // do something generic... } }; ,我想专门do_something,但在它我想称之为“正常” do_something功能: template<> void foo<MyObj>::do_

    2热度

    1回答

    我的问题是w.r.t以下螺纹的显式实例之前,需要外部类模板的显式实例:specialize a member template without specializing its parent 我对这个标准说,这是非法的这样做精绝。但我想了解为什么这样做是非法的?如果允许,会有什么影响?

    7热度

    1回答

    由于几个星期的14个小时的日子,我的大脑已经融化。 我有一个模板类,我正在尝试为该类编写一个模板转换构造函数,并专门构造该构造函数。编译器(MSVC9)对我很不满意。这是我正在编写的实际代码的一个最简单的例子。编译器错误与代码内联。 帮我解开我的大脑。我需要什么语法来做我想做的事情?注意:在我的真实代码中,我必须在声明外定义了convert构造函数,所以这对我来说不是一种选择。 #include

    4热度

    4回答

    我有一个有很多功能,但本质上是一个向量类模板类。我想添加一个函数只是布尔类型。 #include <vector> template <typename T> class reflected{ private: T*dev_; T*host_; ar_size size; reflected<T>& operator=(reflecte

    0热度

    2回答

    我有一个类Helper: template <typename T, template <typename> E> class Helper { ... }; 我有另一个类模板,Exposure,这是同时本身传递作为模板的模板参数E从Helper继承。我也需要专门Exposure。因此,我想写点东西像下面这样: template <> class Exposure<int> :

    4热度

    2回答

    我是新来的模板。我尝试为函数模板定义专用模板,但是我的编译器返回错误。这是一个简单的最大功能,仅用于练习模板;下面的代码: template <typename TYP1, typename TYP2> TYP1 maximum(TYP1& param1, TYP2& param2) { return (param1 > param2 ? param1 : param2); }

    2热度

    3回答

    我想创建一个计算器 template < typename T > class Calculator { public : Calculator (void); ~Calculator (void); T add(T a, T b) { return (a + b) ; } }; 现在,我想使这个计算器中计算出添加

    6热度

    2回答

    我目前正在写的通用矢量模板类(几何实体,而不是容器)具有以下签名... template< typename T, unsigned N > class vector {...} ...其中T是一个算术型和N,尺寸。我想定义交叉产品为运营商^(位于类定义)的过载,并使其只有当N = = 3,我现在已经有是: typename boost::lazy_enable_if_c< (N ==

    2热度

    1回答

    下面的代码编译正确。 #include <string> template <typename T, typename U> class Container { private: T value1; U value2; public: Container(){} void doSomething(T val1, U val2); }; te