나는 다음과 같은 템플릿이 있습니다템플릿 및 CONST ++
#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;
}
그러나 템플릿 값이 CONST 또는 const를 리터럴 의미, 컴파일 시간 동안 알려진해야하기 때문에 프로그램이 컴파일되지 않습니다.
나는 정말로이 오류를 이해하지 못한다. 누구나 나에게 설명 할 수 있을까?
좋아하는 C++ 책에서 "상수 표현"을 찾아보십시오. – sellibitze