如何使用枚举实例化模板构造函数

时间:2018-08-16 20:33:47

标签: c++ templates constructor

我有带有为枚举创建的模板参数的结构。 但是我不知道正确地创建对象的正确方法。

#include <iostream>

enum values
{
    n1 = 1,
    n2 = 2,
    n3 = 3
    //
};

int f(int n1, int n2, int n3)
{
    int some_int;
    //...
    return some_int;
}

struct MyClass
{

    int num;

    template<typename E>
    MyClass() : num(f(E::n1, E::n2, E::n3))
    {

    }
    //...
};

int main()
{
    //???
}

注意:根据设计,我不能使用类级模板

0 个答案:

没有答案