C++컴파일러의 모든 에러와 경고의 리스트(2500 ~ 2599)
                                                                                                                                                                                                
E2500 __declspec(selectany)  (은)는 외부로부터 참조 가능한 변수를 초기화하고 있을 때만 지정할 수 있습니다
__declspec(selectany)  (은)는, 정적 변수, 초기화되어 있지 않은 변수등과 함께 사용할 수 없습니다.

E2501
임포트 파일 'filename'를 열수 없다

이 에러가 발생하는 것은, 다음의 코드를 사용했을 때에,
#import "somefile.h"

임포트 하는 파일이 존재하지 않는지, 컴파일러가 파일을 찾아낼 수 없는 경우입니다.

E2502 #import의 해결 에러: problem여기서, problem, #include( see page 236)   의 다양한 속성에 관한 다음과 같은 문제입니다.

unexpected import directive value attribute 'attribute'나타난 속성에 대해서 값이 제공함missing ') ' in import directive attribute 'attribute'나타난 속성의 값이 올바르게 지정되어 있지 않습니다. 닫아 외모가 없습니다.

unrecognized import directive attribute 'attribute'나타난 토큰은, #import 지령

invalid values for raw_property_prefixes attribute raw_property_prefixes

unexpected duplicate property 'property'나타난#import 속성이 여러 차례 지정되어 있습니다. 이것은 unexpected duplicate get method for property 'property'나타난 프롭퍼티의 취득 메소드 unexpected duplicate put method for property 'property'나타난 프롭퍼티의 삽입 메소드 unexpected duplicate put-reference method for property 'property'나타난 프롭퍼티의 참조 삽입 메소드가 여러 차례 지정되어 있습니다.

no return value specified for property get method 'method'나타난 프롭퍼티 취득 메소드가 올바른 반환값의 형태를 제공하지 않습니다.

no return value specified for property put method 'method'나타난 프롭퍼티 삽입 메소드가 올바른 반환값의 형태를 제공하지 않습니다.

could not load type library in 'filename'나타난 타입 라이브러리를 열지 않았습니다.

could not obtain type library name 컴파일러는 현재의 타입 라이브러리의 라이브러리 명을 취득할 수 없었습니다 관련 링크 #include

E2504 'dynamic'는 비템플릿 멤버 함수에게만 사용할 수 있다
템플릿 멤버 함수로 동적 함수를 사용하려고 했습니다. 동적 함수는, TObject로부터 파생한 클래스에서 사용할 수 있습니다. 동적 함수는, 하위 오브젝트가 아니고, 동적 함수를 정의하는 각 오브젝트로 1 슬롯을 점유 합니다. , 동적 함수는, 공허한 가상 테이블에 격납되는 가상 함수입니다. 동적 함수를 호출했지만, 그 함수가 오브젝트내에서 정의되어 있지 않은 경우는, 그 함수가 발견될 때까지 상위 오브젝트의 가상 테이블이 검색됩니다.
 
E2505 명시적인 인스턴스화에는 엄밀형 지정자(elaborated type specifier )가 필요
(예를 들어"class foo<int>")
다음에 나타내는 코드는 부정합니다.
template <class T> class foo;
template foo< int >;  // 'class'키워드가 없습니다 관련 링크 암묵적 및 명시적인 템플릿 함수

E2506 'specifier'의 명시적인 특화가 애매.
템플릿 인수가 필요 다음의 코드에서는, 명시적인 템플릿 인수가 필요합니다.

template <class T> void foo(T);
template <class T> void foo(T *);
template <> void foo( int *);  //
에러. 'foo<int>' 또는 'foo<int *>'를 지정할 필요가 있습니다

E2507 'class'가'class'의 직접 기본 클래스가 아니다

최초의 형태가 2번째의 형태의 직접적인 기본 클래스가 아닙니다. 직접적인 기본 클래스란, 그 클래스의 서브 클래스로부터가 아니고, 그 클래스로부터 직접 파생하고 있는 것을 의미합니다.

E2509 값이 범위를 벗어남

인라인 어셈블러가 식의 하나로 수치 오버플로우를 검출했습니다. 모든 수치가 32비트에 들어가도록 해 주세요.

E2510 오퍼랜드 사이즈가 일치하고 있지 않다

이 항목의 도움말은 없습니다.

E2511 “n”행의 종료되지 않은 매크로 인수

“n” 행으로 개시된 매크로 인수가 올바르게 종료하고 있지 않습니다.

E2512 함수'function'의 반환형(return type)의 RTTI를 생성할 수 없다

컴파일러가 함수의 반환값의 형태에 관한 RTTI 정보를 생성할 수 없는 경우는, 이 에러가 발생합니다.
자세한 것은, 실행시 형 정보를 참조해 주세요.

E2513 인수 'parameter' 함수 'function’ 의 RTTI를 생성할 수 없다

컴파일러가 파라미터의 반환값의 형태에 관한 RTTI 정보를 생성할 수 없는 경우는, 이 에러가 발생합니다. 자세한 것은, 실행시 형 정보를 참조해 주세요.

E2515 generic 템플릿 클래스의 멤버는 명시적으로 특화할 수 없다

범용 템플릿으로부터 특화된 멤버를 작성하려고 하고 있습니다. 예를 들어, 다음의 코드는 부정합니다.

 template <typename T>
class foo
{
    template <typename U>
   
class bar
    {
     };
};
template <typename T>
template <>
class foo<T>:: bar< char > {

};

이 예의 2번째의 선언은 에러입니다. 이것은, foo<T> 안에서 bar<char> ()를 명시적으로 특화하고 있기 (위해)때문입니다.

E2522 non const 함수 ‘function’ 이 const 오브젝트를 호출

데이터형이 일치하지 않기 때문에, 잘못된 함수 호출이 되어 있습니다.

불려 가는 오브젝트(const 함수), const 오브젝트가 아니면 안됩니다.

E2523 비휘발성 함수 ‘name’이 휘발성(volatile) 오브젝트를 호출데이터형이 일치하지 않습니다.

이것은, 잘못된 함수 호출입니다. 불려 가는 오브젝트(volatile 함수), volatile 오브젝트가 아니면 안됩니다.

E2525 xstring를 인클루드 해 이 기능을 사용하기 전에, PCH_STATIC_CONST를 정의할 필요가 있습니다

Dinkumware 표준 C++라이브러리에 포함되는 xstring로 정의되고 있는 기능을 사용하려고 했습니다. 헤더에 정수(xstri ng로 정의되고 있다)가 있기 위해, C++컴파일러는 프리컴파일이 끝난 헤더를 생성할 수 없었습니다. xstring를 인클루드 하는 경우는, 최초로 define _PCH_STATIC_CONST를 설정할 필요가 있습니다.


E2526 프롭퍼티'name'가 취득 메소드와 설정 메소드로서 다른 프롭퍼티를 사용하고 있습니다(이것은 허용되지 않음)통상, 프롭퍼티는 취득 메소드와 설정 메소드의 양쪽 모두를 가집니다. 다만, 다른 프롭퍼티의 취득 메소드나 설정 메소드로서의 역할을 완수할 수 없습니다.

E2527 옵션'name''name'에 의해서 설정할 수 없습니다파일의 해석 또는 컴파일이 시작된 후에는 설정할 수 없는 옵션을, 원시 파일 내에서 설정하려고 하고 있습니다. 이 옵션은, 커멘드 라인, 또는. cfg 파일로 설정해 주세요. 예를 들어, 원시 파일에, #pragma option push -v 가 포함되어 있는 경우는, push를 삭제하고, 커맨드 라인 또는. cfg 파일로, 이 옵션의 set/unset를 실시할 필요가 있습니다.

E2528 옵션'name'는 컴파일이 시작되기 전으로 설정할 필요가 있습니다컴파일이 시작되기 전으로 설정할 필요가 있는 옵션을, 원시 파일 내에서 설정하려고 하고 있습니다. 이 옵션은, 커맨드 라인,. cfg 파일, 또는 원시 파일의 선두(int foo();    행의 앞)으로 설정해 주세요.

E2529 패스'path'가 최대 사이즈'n'를 넘고 있습니다
include 파일을 검색할 때에, C++컴파일러는, Windows로 용서되고 있는 문자수보다 긴 패스명을 가지는 파일을 검출했습니다. 짧은 패스명으로 변경해 주세요.

'1.소프트웨어 이야기 > 10.번역 작업' 카테고리의 다른 글

VCL 에러메시지 2400 ~ 2499  (0) 2008.01.25
VCL 에러메시지 2300 ~ 2399  (0) 2008.01.25
VCL 에러메시지 2200 ~ 2299  (0) 2008.01.25
                                                                                                                                                                                                   
C
++
컴파일러의 모든 에러와 경고의 리스트(2400 ~ 2499)
                                                                                                                                                                                                 

E2472 인스턴스화에 의해서 멤버 함수를 선언할 수 없다템플릿 클래스내의 선언이 템플릿 파라미터에 의존하는 형태를 통해서 함수형을 받기 위해, 함수 선언자의 올바른 구문을 사용해 함수형을 받지 않는 선언이 되는 경우, 이 프로그램의 형식은 부정합니다. 예를 나타냅니다.
template <class T>
struct A {
static T t;
};

typedef int function();

A<function> a;  //에러:  A<function>:: t//정적 멤버 함수로서 선언됩니다 다른 예를 나타냅니다.

다음의 예에서는, 템플릿 멤버'a''T'형태입니다. 이 템플릿이 함수형으로서 T로 인스턴스화 되면, 'a '는 멤버 함수이게 됩니다. 이것은 허가되지 않고, 이 에러 메세지가 표시됩니다.
template <T& x> class foo { T a;  }
int func( int );
template class foo<func>;

E2474 'function'는 정적 또는 인 라인 해 선언할 수 없다심볼을 정적 또는 인 라인으로서 선언하려고 했습니다만, 이 형태의 심볼을 정적 또는 인 라인으로서 정의할 수 없습니다. 'main', 'WinMain'등의 함수는, 정적 또는 인 라인으로서 선언할 수 없습니다. 'main'는 콘솔 프로그램의 엔트리 포인트이며, 'WinMain' Windows 어플리케이션의 엔트리 포인트입니다.

예를 들어, 이 에러는, 다음의 경우에 표시됩니다. 

static int main()    //이것은 에러가 됩니다
{}

또는
inline int main()  { return 0;  }

E2475 'function'는 템플릿 함수에는 할 수 없다'main', 'WinMain'등의 함수는, 템플릿 함수로서 선언할 수 없습니다. 'main'는 콘솔 프로그램의 엔트리 포인트이며, 'WinMain' Windows 어플리케이션의 엔트리 포인트입니다.

예)
template <class T> int main()    //
이것은 에러가 됩니다
{}

관련 링크
functiontemplates.xml

E2480 복잡한 부분 특화의 인수에 템플릿 파라미터를 넣을 수 없다 
단지 템플릿 파라미터를 직접 참조하지 않는 한, 부분 특화에서는, 값이 아닌 인수식에서 다른 템플릿 파라미터를 참조할 수 없습니다. 예를 나타냅니다. 
template<int A, int B, int C> class foo;
template<int A> class foo<A+5, A, A+10>;
이 부분 특화에는 부정한 인수가 2개 있습니다. 'A'를 단순한 직접 인수로서 사용하고 있지 않기 때문에, 'A+5'는 복잡한 식입니다. 2
차례째의 인수의 단순한'A'의 참조는 유효합니다. 다만, 3번째의 인수는, 복잡한 방법으로'A'를 참조하고 있기 때문에, 역시 부정합니다.

E2481 예기치 않은 문자열 정수 
컴파일러가 소스 입력으로의 문자열 정수의 출현을 예기치 않은 경우가 있습니다. 예를 나타냅니다. 
class foo { "Hello";  };

E2482 문자열 정수가 필요 
컴파일러는, 이 정도치에 문자열 정수를 예상했습니다만, 문자열 정수를 받지 않았습니다.
컴파일러는, 이 에러를 생성하지 않게 되었습니다.

E2483 배열의 차원 'specifier'를 판정할 수 없다
형태의 인스턴스화 중에 배열의 차원을 계산할 수 없는 경우는(통상, 보고되는 것 외의 에러가 원인으로 발생), 이 에러가 발생합니다. 예를 들어, 배열의 차원이 템플릿의 파라미터에 의존하고 있지만, 파라미터의 해석 중에 에러가 발생해, 치환되는 템플릿 인수가 유효한 정수식이 되지 않는 경우는, 이 에러가 표시됩니다.

E2488 토큰 응답 심도의 상한을 초과했다:재귀를 체크해 주세요
이 에러는, 재귀적인 템플릿의 인스턴스화가 너무 깊은 것을 나타냅니다. 프로그램에 컴파일시의 재귀 처리가 있는지 없는지를 확인해, 어느 256 레벨 이하에 억제해 주세요.

E2489 옵션 문맥 응답 심도의 상한을 초과: 재귀를 체크해 주세요
이 에러는, 재귀적인 템플릿의 인스턴스화가 너무 깊은 것을 나타냅니다.
프로그램에 컴파일시의 재귀 처리가 있는지 없는지를 확인해, 어느 256 레벨 이하에 억제해 주세요.

E2491 최대 VIRDEF수를 초과했다: 재귀를 체크해 주세요
할당할 수 있었던 VIRDEF 심볼이 너무 많습니다. 컴파일러는, 변환 유닛 마다 사용할 수 있는 VIRDEF의 수를 제한하고 있습니다. 현재, VIRDEF의 제한은 16384입니다.
예를 들어, 프로그램에 16384개를 넘는 함수가 있으면, 이 에러가 발생합니다.

E2493 부정한 GUID 문자열
GUID 문자열이 글로벌 유니크 식별자(GUID)의 형식이 아닙니다.

E2494 인식할 수 없는 __declspec 수식자
무효인 _declspec 수식자가 지정되었습니다.

E2495 uuid의 재정의가 동일하지 않다 
구조체에 아탓치 되는 GUID는, 같은 구조체의 복수의 선언 및 정의동안에서 같은 필요가 있습니다. 따라서, 다음의 예는 이 에러를 생성합니다. 
class __declspec(uuid("19 a76fe0-7494-11 d0-8816-00 a0c903b83c"))  foo;
class __declspec(uuid("00000000-7494-11 d0-8816-00 a0c903b83c"))  foo{}

E2496 무효인 uuidof(구조 체형| 변수)의 호출
uuidof 연산자에 부정한 인수가 지정되었습니다.

E2497 형'type'에 GUID를 관련 지을 수 있지 않았다
GUID가 필요한 상황으로 변수 또는 형태가 사용되었습니다만, 형태에 관련지을 수 있고 있는 GUID가 없습니다. GUID, _declspec (uuid(GUID))  ()를 사용하고 형태에 관련 지을 수 있습니다.

E2498 정의 끝난 구조체 GUID가 필요
GUID 구조체를 정의하는 헤더를 삽입하지 않고__uuidof 연산자를 사용하면, 이 에러가 발생합니다. 따라서, 다음의 프로그램 코드는 이 에러가 됩니다. 

class __declspec (uuid("19 a76fe0-7494-11 d0-8816-00 a0c903b83c"))  foo{};
int main()
{
    __uuidof(foo);
    return 0;
}

이 코드는 다음과 같이 수정할 수 있습니다.
# include <windows.h>      //
구조체의 GUID가 인클루드 됩니다
class __declspec (uuid("19 a76fe0-7494-11 d0-8816-00 a0c903b83c"))  foo{};
int main()
{
    __uuidof(foo);
    return 0;
}

E2499 무효인__declspec(uuid(Guig) )  형식
잘못된 형식을 사용해 GuidString를 정의하면, 이 에러가 발생합니다. 구조체의 GUID는 다음과 같이 정의됩니다.
class __declspec (uuid("19 a76fe0-7494-11 d0-8816-00 a0c903b83c"))  foo{};

예를 들어, 다음의 코드를 사용하면, 이 에러가 발생합니다. 

class __declspec (uuid(19 a76fe0-7494-11 d0-8816-00 a0c903b83c)) foo{};   //인용부호가 없습니다 또는 class __declspec (uuid"7494-11 d0-8816-00 a0c903b83c"))  foo{};  //왼쪽이나 고화 없습니다


 
                                                                                                                                                                                                   
C
++
컴파일러의 모든 에러와 경고의 리스트(2300 ~ 2399)
                                                                                                                                                                                                 
E2300 'specifier'의 특화의 일치하는 형태를 생성 할 수 없다컴파일러는, 이 에러를 생성하지 않게 되었습니다.

E2350 옵션을 식별할 수 없습니다, 또는 헬프가 없습니다
C++컴파일러를 해석할 수 없는 커멘드 요소가 입력되었는지, 또는 입력된 옵션에 관련하는 헬프가 존재하지 않습니다. 다시 해 주세요.

E2386 복잡한 부분 특화식에 파라미터'param eter'를 넣을 수 없다 
부분 특화된 템플릿 클래스를 선언 또는 정의하는 경우, 복잡한 식에 비형 템플릿 파라미터를 넣는 것은 부정합니다. 비형 템플릿 파라미터는, 이름에서만 참조할 수 있습니다. 예를 나타냅니다. 
template<class T, int U>
class foo;
template<int U>
class foo<char, U * 3>; //에러:  "U * 3"은 복잡한 식입니다
template<int U> 
class foo<char, U>; // OK:  "U"는 단순하고, 이름을 사용한 식입니다

E2387 부분 특화에서는 의존관계(dependencies)에 있는 형태 이외의 파라미터('parameter')를 특화하지 않는 부분 특화에서는, 다른 형태 파라미터에 의존하는 템플릿 파라미터를 특화 인수 리스트내에서 사용할 수 없습니다.
예를 나타냅니다. 
template<class T, int U>
class foo;
template<class T, T U>
class foo<T *, U>;       //에러:  'U'는 형태에 의존합니다

E2388 특화의 인수 리스트는 1차 템플릿의 파라미터 리스트와 동일하게 할 수 없는 부분 특화를 선언하는 경우, 특화 인수 리스트는, 기본의 파라미터 리스트와는 다를 필요가 있습니다.
예를 나타냅니다.
template<class T> 
class foo;
template<class T>
class foo<T *>;      // OK:  기본 템플릿보다 특화되고 있습니다
template<class T>
class foo<T>;        //에러:  기본 템플릿과 같습니다

E2389 대체 인수의 종류와 템플릿 파라미터'parameter'와의 불일치 
특화된 템플릿을 참조하는 경우는, 형태 인수를 사용해 모든 형태 파라미터를 제공할 필요가 있습니다. 모든 비형 파라미터에는 비형 인수가 필요합니다. 또, 모든 템플릿 템플릿 파라미터에는, 템플릿명 또는 다른 템플릿 템플릿 인수중 한쪽이 필요합니다. 이러한 요건중 한쪽이 채워지지 않은 경우는, 이 에러가 발생합니다. 예를 나타냅니다. 
template<class T, int U, template<class V> class W>
class foo;
foo<char, 10, foo> x;     // OK:  모든 파라미터의 종류가 일치하고 있는 foo<10, char, int> y;     //에러:  파라미터의 종류가 전혀 일치하고 있지 않습니다


'1.소프트웨어 이야기 > 10.번역 작업' 카테고리의 다른 글

VCL 에러메시지 2400 ~ 2499  (0) 2008.01.25
VCL 에러메시지 2200 ~ 2299  (0) 2008.01.25
VCL 에러메시지 2100 ~ 2199  (0) 2008.01.25
                                                                                                                                                                                                   
C
++
컴파일러의 모든 에러와 경고의 리스트(2200 ~ 2299)
                                                                                                                                                                                                 
E2230 인 라인의 데이터 멤버의 초기화에는 정수의 정수식이 필요static const 클래스 멤버는, 클래스의 본체로 초기화됩니다만, 정수형의 정수 식에서 초기화할 필요가 있습니다. 

E2241 VCL 형식의 클래스에는 가상 소멸자가 필요VCL 스타일의 클래스에서 정의되는 소멸자는, 가상 함수일 필요가 있습니다
예)
struct__declspec(delphiclass) vclclass1
{
    ~vclclass1()  {}            //
에러
};

struct__declspec(delphiclass) vclclass2
{
    virtual ~vclclass2()  {}     // OK
};
 

E2246 x는, 추상 및 퍼블릭의, 데이터를 가지지 않는 단일의 계승 클래스 계층이 아닌 내부 compile error입니다. 컴파일러가 클래스 계층에 제약을 적용하는 경우가 있습니다. 이 경우의 제약은, 모든 클래스가 추상 클래스에서, 모든 클래스가 부모를 1개만 갖는다고 하는 것입니다.
 

E2249 =가 필요컴파일러는, 에러가 보고된 위치에 등호를 예상했습니다만, 등호가 없었습니다.
통상, 이것은 구문 에러 또는 입력 미스입니다.
 

E2267 최초의 부모는 VCL 클래스가 아니면 안되는 내부 compile error입니다.컴파일러가 클래스 계층에 제약을 적용하는 경우가 있습니다. 이 경우의 제한은, 클래스의 최초의 부모가 Delphi 스타일의 클래스인 것입니다

E2295 'specifier'로부터의 템플릿 특화의 후보가 너무 많다특화된 클래스 템플릿을 참조하는 경우에, 1개의 참조에 대해서 복수의 후보가 존재할 가능성이 있습니다. 이것은, 일치하는 부분 특화가 복수 존재하는 경우에, 부분 특화된 클래스간에서만 발생합니다. 

template <class T, class U>
class foo;
template <class T>
class foo<T, T *>;
template <class T>
class foo<T *, T>;
foo< int *, int *> x;    //
에러:  사용하는 부분 특화가 불명합니다
                            //이 예에서는, 양쪽 모두의 부분 특화가 유효하고, 특화의 정도도 같아서, 에러가 발생합니다.

E2299 'specifier'로부터 템플릿 특화를 생성할 수 없다특화의 후보가 전혀 없는 듯한 방법으로 템플릿 클래스 또는 함수를 참조하려고 하면, 이 에러가 발생합니다.
예)
template <class T>
class foo;
foo<10> x;         //
에러:  'foo'의 인수가 무효입니다

'1.소프트웨어 이야기 > 10.번역 작업' 카테고리의 다른 글

VCL 에러메시지 2300 ~ 2399  (0) 2008.01.25
VCL 에러메시지 2100 ~ 2199  (0) 2008.01.25
VCL 에러메시지 2000 ~ 2099  (0) 2008.01.25
                                                                                                                                                                                                   
C
++
컴파일러의 모든 에러와 경고의 리스트(2100 ~ 2199)
                                                                                                                                                                                                  
E2100 템플릿의 선언 리스트가 잘못되어 있습니다

템플릿 클래스 선언의 뒤에 선언 리스트를 계속하는 것은 부정합니다. 예를 나타냅니다. 

template <class T>
class foo {

} object_name;    //이것은 에러가 됩니다

E2102 특화 파라미터를 지정하지 않으면 템플릿'template'를 사용할 수 없다.
범용 형식의 템플릿은, 특화 파라미터를 사용해 참조할 필요가 있습니다. 예를 들어, 2개의 템플릿 파라미터를 취하는 foo라고 하는 템플릿 클래스가 있는 경우, 올바른 참조는 다음의 형식이 됩니다.
foo< int , char >

템플릿을 foo로서 올바르게 참조할 수 있는 것은, 다음의 2개의 경우 뿐입니다.
·  템플릿명을 템플릿 템플릿 인수로서 건네주는 경우
·  클래스 템플릿의 멤버를 선언할 경우에, 그것을 포함 하는 템플릿의 형태를 참조하는 경우예를 나타냅니다. 

template <class T>
class foo
{
public :
    foo();         //
템플릿 명만의 올바른 사용입니다
    foo& operator =(const foo&);
};

foo<foo> x;     //에러:  템플릿 인수가 아닙니다
foo y;      //에러:  특화 파라미터가 필요합니다
 
E2105 'template'한정자는 멤버 템플릿 명을 지정해야 한다

템플릿 파라미터에 의존하는 코드를 해석하는 경우, 멤버명을 템플릿 함수명 또는 통상의 파라미터의 어느 쪽으로 해결할까를 판단할 수 없는 경우가 있습니다. 다음의 코드에서는, '<'(소든지) 연산자를 템플릿 인수 리스트의 개시 문자로서 해석하는지, 통상의'<'연산자로서 해석할까를 판단하기 위해서, 'template'한정자가 필요합니다. 

template <class T>
void foo(T a)
{
    a.member<10>();
}

'<'의 의미는 독자에게는 분명합니다만, 컴파일러는,"member"가 멤버 템플릿 함수를 나타내는 것을 인식하지 못하고, 코드행을 다음과 같이 해석합니다. 

a.member < (10>());

'<'가 템플릿 인수 리스트의 개시 문자인 것을 컴파일러에 통지하려면, 'template'한정자가 필요합니다. 

a.  template member<10>();     // "member"는 멤버 템플릿이 아니면 안됩니다"member"가 멤버 템플릿에 해결되지 않는 상황으로 'template' 한정자를 사용하면, 이 에러가 발생합니다.
 

E2107 템플릿 'template'의 사용이 무효

이 에러는, 특화된 템플릿을 참조하는 목적 이외로 템플릿 템플릿 파라미터를 사용했을 경우, 즉 그 파라미터를 다른 템플릿의 템플릿 템플릿 인수로서 건네주려고 하면 발생합니다.

예)
template <template <class T> class U>
class foo;
template <template <class T> class U>
class bar
{
    U x;  //
에러:  특화가 아닙니다
    U<U> y;  // OK:  특화의 목적으로, 템플릿     
                //인수로서 사용됩니다
    U<bar> z;  // OK:  특화의 참조에 사용됩니다
};

E2122  함수 호출이 미처리 예외'value'에 의해서 주소'addr'로 종료했다 

버그시의 평가중의 식에 미처리의 예외를 생성해 종료하는 함수 호출이 포함되어 있는 경우는, 이 메세지가 생성됩니다. 예를 들어, 디버거의 평가 다이얼로그로 식 foo()+1의 평가를 요구해, 함수 foo()  의 실행에 의해서 GPfault가 발생하는 경우는, 이 에러 메세지가 생성됩니다.
이 메세지는, 식의 평가 결과가 표시되는 감시식 윈도우에도 표시됩니다.

E2191 '__far16'는 '__pascal' 또는 decl' 가 있는 경우에 한해서 사용할 수 있다

이것은 내부 compile error입니다. 키워드__far16가 키워드 __pascal 또는 __cdecl 의 어느 쪽이든 같은 선언에 혼재하고 있는 경우는, 컴파일러가 이 메시지를 생성합니다.

E2198 식의 표시 형식을 지정하는 형태가 올바르지 않다

사용하지 않습니다.

E2196 멤버 함수'function'의 주소를 취득할 수 없다
클래스 멤버 함수의 주소를 받는 식이 있습니다만, 이 멤버 함수는 디버그중의 프로그램에 발견되지 않았습니다. 이 메세지는, 평가 모듈이 생성합니다.
                                                                                                                                                                                                 
C
++
컴파일러의 모든 에러와 경고의 리스트(2000 ~ 2099)
                                                                                                                                                                                                   

E2008 published 프롭퍼티의 액세스관은__fastcall 호출 규약을 사용하도록 해야 된다
__published 섹션으로 선언되는 프롭퍼티의 액세스 함수(read, write, stored)의 호출 규약은, __ fastcall 일 필요가 있습니다. 이것은, 호이스트 프로파티에도 적용됩니다.

예)
struct__declspec(delphiclass) clxclass
{
        int__fastcall Getter1(void);     
        int__cdecl Getter2(void);
 __published
    int __property ip1 = {read = Getter1};    // OKint  
 __property ip2 = {read = Getter2};    //
에러
};

E2050 __declspec(delphireturn)  하지만 지정되어 있는 클래스'class'는 하나의 데이터 멤버 게다가라고 없다
이것은 내부 compile error입니다. delphireturn 클래스로서 마크 된 클래스가 복수의 비정적 데이터 멤버를 가집니다.

E2066 Invalid MOM inheritance - 비사용의 에러 메시지

현재 컴파일중의 클래스에, 그 클래스의 직접적인 부모와 같은 MOM(Microsoft Object Model) 관련 플래그가 설정되어 있지 않은 경우, 컴파일러는 이 에러를 생성합니다.
compile error 메세지는 폐지되었습니다.

E2074 -g 또는 -j옵션에는 0에서 255의 수치를 건네주지 않으면 안 된다
-g ―j 커맨드 라인 옵션의 뒤에는, 옵션의 수치를 매길 수 있습니다. 컴파일러는 이 수치를 0~255의 범위로 간주합니다.



VCL을 사용하다가 보면 알람이나 에러메시지를 만나면 간단한것들은 그냥 해결이 가능하나 어떤것들은 모호할때가 있다. 이럴때를 대비해서 Codegear에서 제공하는 메뉴얼을 참조해 하나씩 번역할려고 한다..

그런데, 언제 끝날지 모른다.. 번역기의 도움과 어설픈 영어해석으로 말이 안 맞을수도 있다.
그러나 대충 뜻은 알아 들을수 있을것이다. (예전에 컴파일시 나타나는 에러 메시지를 한글화 했으나. 업데이트 할때마다 이 파일을 자꾸 건들려야 해서.. 이제부터는 아예 이런식으로 정리할려고 한다. 추후 시간이 되면 기존에 하던 작업도 업데이트 해야겠다.)

문서는 100 단위씩 나누어서 작업할 예정..

작업환경 : RAD STUDIO (C++ Builder 2007)
참고문서 : 24682_rad_studio_2007_help_c_reference_help
번역기 : http://translation.infoseek.co.jp/ - 일한번역기가 따로 없어서 인터넷이 될때만 한다.

'1.소프트웨어 이야기 > 10.번역 작업' 카테고리의 다른 글

VCL 에러메시지 2200 ~ 2299  (0) 2008.01.25
VCL 에러메시지 2100 ~ 2199  (0) 2008.01.25
VCL 에러메시지 2000 ~ 2099  (0) 2008.01.25

+ Recent posts