0
특수 클래스 멤버 함수를 사용하려고합니다. 하나의 게시물에서 다음 솔루션을 발견했지만 나와 함께 작동하지 않습니다. 솔루션을 빌드 할 때 다음 오류가 나타납니다. - TestClass.obj : LNK2005 오류 및 치명적인 오류 LNK1169. 내 코드에 어떤 문제가 있습니까? 명시 적으로 전문특수 클래스 멤버 함수
template <class T1, class T2>
class TestClass
{
private:
VD cdata;
public:
TestClass(void){};
TestClass(VD & edata);
T1 fun1(const T2 ex);
~TestClass(void);
};
template <class T1, class T2>
T1 TestClass<T1, T2>::fun1(const T2 x)
{
T1 v1 = 100.0*pow(x[1] - x[0]*x[0],2) + pow(1 - x[0],2);
return v1;
}
template <>
double TestClass<double, column_vector>::fun1(const column_vector x)
{
double v1 = 100.0*pow(x(1) - x(0)*x(0),2) + pow(1 - x(0),2);
return v1;
}
.cpp 파일에 넣고 있습니까? –
.h 파일에 없음 –
죄송합니다. 문제가 해결되었지만 프로젝트에서 빈 .cpp 파일을 제거하지 않았습니다. Andy Prowl에게 제안 해 주셔서 감사합니다. –