
Q&A - 묻고 답하기
안녕하세요?
이번에 Visual Studio 2013으로 프로젝트를 업그레이드 하는데, 업데이트 후 컴파일이 제대로 이루어 지지 않습니다.
에러 문구는 다음과 같습니다.
1>d:\ocf_2014_01_24_01\ocf_2014_01_24_01\include\lib\base\Traits.h(424): error C2753: '__OCF_BASE__::CTypeOfTypes<TL,IDX>' : 부분 특수화는 기본 템플릿의 인수 목록과 일치할 수 없습니다.
1>d:\ocf_2014_01_24_01\ocf_2014_01_24_01\include\lib\base\Traits.h(436): error C2753: '__OCF_BASE__::CValueOfValues<VL,IDX>' : 부분 특수화는 기본 템플릿의 인수 목록과 일치할 수 없습니다.
1>d:\ocf_2014_01_24_01\ocf_2014_01_24_01\include\lib\base\Traits.h(1759): error C2753: '__OCF_BASE__::CIsValueOfValues<VL,L>' : 부분 특수화는 기본 템플릿의 인수 목록과 일치할 수 없습니다.
1>d:\ocf_2014_01_24_01\ocf_2014_01_24_01\include\lib\base\Traits.h(1970): error C2753: '__OCF_BASE__::CValueBlockOfValueBlocks<VL,IDX>' : 부분 특수화는 기본 템플릿의 인수 목록과 일치할 수 없습니다.
1>d:\ocf_2014_01_24_01\ocf_2014_01_24_01\include\lib\base\CsvLoader.h(680): error C2753: '__OCF_BASE__::CCsvLoader<TYPE,SEPERATOR,VL,ALLOC>' : 부분 특수화는 기본 템플릿의 인수 목록과 일치할 수 없습니다.
답변 좀 부탁드리겠습니다.
항상 친절한 답변에 감사드립니다.
이번에 Visual Studio 2013으로 프로젝트를 업그레이드 하는데, 업데이트 후 컴파일이 제대로 이루어 지지 않습니다.
에러 문구는 다음과 같습니다.
1>d:\ocf_2014_01_24_01\ocf_2014_01_24_01\include\lib\base\Traits.h(424): error C2753: '__OCF_BASE__::CTypeOfTypes<TL,IDX>' : 부분 특수화는 기본 템플릿의 인수 목록과 일치할 수 없습니다.
1>d:\ocf_2014_01_24_01\ocf_2014_01_24_01\include\lib\base\Traits.h(436): error C2753: '__OCF_BASE__::CValueOfValues<VL,IDX>' : 부분 특수화는 기본 템플릿의 인수 목록과 일치할 수 없습니다.
1>d:\ocf_2014_01_24_01\ocf_2014_01_24_01\include\lib\base\Traits.h(1759): error C2753: '__OCF_BASE__::CIsValueOfValues<VL,L>' : 부분 특수화는 기본 템플릿의 인수 목록과 일치할 수 없습니다.
1>d:\ocf_2014_01_24_01\ocf_2014_01_24_01\include\lib\base\Traits.h(1970): error C2753: '__OCF_BASE__::CValueBlockOfValueBlocks<VL,IDX>' : 부분 특수화는 기본 템플릿의 인수 목록과 일치할 수 없습니다.
1>d:\ocf_2014_01_24_01\ocf_2014_01_24_01\include\lib\base\CsvLoader.h(680): error C2753: '__OCF_BASE__::CCsvLoader<TYPE,SEPERATOR,VL,ALLOC>' : 부분 특수화는 기본 템플릿의 인수 목록과 일치할 수 없습니다.
답변 좀 부탁드리겠습니다.
항상 친절한 답변에 감사드립니다.
2014.05.09 13:46:46
파일 업로그가 안되서.. 설명으로...
template <class TL, LONG IDX>
struct CTypeOfTypes;
template <class TL> struct CTypeOfTypes<TL, 0>
{
typedef typename TL::Head _T;
};
template <class TL, LONG IDX> struct CTypeOfTypes<TL, IDX>
{
typedef typename CTypeOfTypes<typename TL::Tail, IDX - 1>::_T _T;
};
위의 이부분에서
template <class TL, LONG IDX> struct CTypeOfTypes<TL, IDX>
이부분이 동일하게 전방에 선언이 된 상태에서 아래에도 그것에 대한 구현이 들어가서 그렇습니다.
template <class TL, LONG IDX> struct CTypeOfTypes
{
typedef typename CTypeOfTypes<typename TL::Tail, IDX - 1>::_T _T;
};
template <class TL> struct CTypeOfTypes<TL, 0>
{
typedef typename TL::Head _T;
};
이런식으로 오류나는 것들을 모두 바꾸시면 됩니다.
시간나면 www.webhard.co.kr에 올려 놓겠습니다.. 웹하드에 접근이 차단되서 올리지를 못하네요.
수고하십시요
vs2013으로 확인을 한번 해보겠습니다. 가지고 있지를 못해서 시간이 걸릴듯합니다.