|
C++ Builder 컴파일러의 버그입니다.
이용태 님이 쓰신 글 :
: 일단 대문자 TYPENAME은 아니구요... 소문자 typename 이었습니다. C++ 에디터로 변환했더니 대문자로 자동 변환된거 같습니다.
:
:
: 우선 소스의 T는 AiType형으로 제가 define 문으로 재정의한 형입니다
:
: #define AiType ViInt8 // <-- ViInt8을 AiType으로 재정의 했습니다.
:
: ViInt8은 제가 사용하는 라이브러리에서 사용하는 형인데요... 라이브러리 헤더화일 뒤졌더니...
:
: ViInt8은 signed char 로 정의되어 있습니다.
:
: 이것을 풀어쓰면..
:
: T == AiType == ViInt8 == unsigned char 인데요...
:
: 즉 김태선님이 말씀하신대로 T는 일반 변수형이므로 에러가 발생하지 말아야 하는거 아닌지요?
:
: T를 일반 변수형으로 직접 대체해버리면 이상없이 컴파일됩니다..
:
: void CalPeakData(T* pData, int *peakPos, int *peakVal)
: {
: int max = 0;
: int max_index;
:
: int min = 0;
: int min_index;
:
: //어쩌구 저쩌구...
:
: max = pData[i];
: max_index = i;
:
: *peakVal = max;
: *peakPos = i;
: }
:
: 이거 왜 그런건지 잘 모르겠습니다...
:
: 무엇이 문제일까요??
|