我正在尝试为项目做这样的事情......
template <class N>
class MyClass
{
float properties[N];
};
有没有在C ++中实现这个目标?
答案 0 :(得分:5)
您需要的是 value 模板参数:
template <size_t N> class MyClass { float properties[N]; };
//^^^^^^ note this
现在您可以实例化此类模板,将任何非负整数值作为模板参数传递。例如,
MyClass<10> c1; //N=10
MyClass<100> c1; //N=100
您也可以将const表达式传递为:
const size_t size = 200;
MyClass<size> c2; //N=200