Как я понял, значение шаблона нужно знать во время компиляции.поэтому я напишу небольшой пример, чтобы увидеть, что я понял, но, по правде говоря, я этого не сделал.так я получаю это:
`defValue' cannot appear in a constant-
expression
Может кто-нибудь, пожалуйста, в чем проблема и как это можно исправить?
#include <iostream>
template <class T,T defaultVal, int dim=255>
class Vec
{
T _vec[dim];
int _dim;
public:
Vec () : _dim(dim)
{
for (int i=0;i<_dim;++i)
{
_vec[i] = defaultVal;
}
}
~Vec () {};
// other operators and stuff
};
int main ()
{
int defValue = 0;
Vec < int,defValue > vecWithDefVal;// here is the problem but i don't know why
}