다음을 통해 공유


컴파일러 경고(수준 4) C4238

비표준 확장 사용: lvalue로 사용되는 클래스 rvalue

이전 버전의 Visual C++와 호환성을 위해 Microsoft 확장(/Ze)을 사용하면 해당 주소를 암시적으로 또는 명시적으로 사용하는 컨텍스트에서 클래스 형식을 rvalue로 사용할 수 있습니다. 아래 예제와 같은 경우에 위험할 수 있습니다.

예시

// C4238.cpp
// compile with: /W4 /c
struct C {
   C() {}
};

C * pC = &C();   // C4238

이 사용으로 인해 ANSI 호환성(/Za)에서 오류가 발생합니다.