다음을 통해 공유


컴파일러 경고(수준 1) C4383

'instance_dereference_operator': 사용자 정의 'operator' 연산자가 있을 때 핸들을 역참조하는 의미는 변경됩니다. 피연산자에 대해 명시적으로 표시할 정적 함수로 연산자를 씁니다.

관리되는 형식에서 역참조 연산자의 사용자 정의 인스턴스 재정의를 추가하는 경우 핸들의 개체를 반환하는 형식의 역참조 연산자의 기능을 재정의할 수 있습니다. 정적 사용자 정의 역참조 연산자를 작성하는 것이 좋습니다.

자세한 내용은 개체 연산자(^)추적 참조 연산자에 대한 핸들을 참조하세요.

또한 참조된 메타데이터를 통해 다른 언어 컴파일러에서 인스턴스 연산자를 사용할 수 없습니다. 자세한 내용은 사용자 정의 연산자(C++/CLI)를 참조하세요.

예시

다음 샘플에서는 C4383을 생성합니다.

// C4383.cpp
// compile with: /clr /W1

ref struct S {
   int operator*() { return 0; }   // C4383
};

ref struct T {
   static int operator*(T%) { return 0; }
};

int main() {
   S s;
   S^ pS = %s;

   T t;
   T^ pT = %t;
   T% rT = *pT;
}