컴파일러 경고(수준 3) CS0414
업데이트: 2007년 11월
오류 메시지
'field' 전용 필드가 할당되었지만 해당 값은 사용되지 않습니다.
The private field 'field' is assigned but its value is never used
이 경고는 변수가 참조되지 않는 것을 컴파일러에서 확인할 수 있는 몇 가지 경우에 발생할 수 있습니다.
private 필드에 상수 값이 할당되었지만 이후에 이 값을 읽은 적이 없는 경우. 불필요한 할당은 성능에 영향을 줄 수 있습니다. 해당 필드를 제거하는 것이 좋습니다.
이니셜라이저에서만 private 또는 internal static 필드에 상수 값이 할당된 경우. 필드를 const로 변경하는 것이 좋습니다.
private 또는 internal 필드에 상수 값이 할당되었으며 해당 필드가 #ifdef 지시문으로 제외된 블록에서만 사용되는 경우. 필드를 #ifdef 블록 내에 배치하는 것이 좋습니다.
여러 위치에서 private 또는 internal 필드에 상수 값이 할당되었지만 해당 필드에 액세스하지 않는 경우. 필드가 필요하지 않은 경우에는 제거하고, 그렇지 않으면 적절한 방식으로 사용하는 것이 좋습니다.
그 밖의 경우나 제안된 해결 방법을 사용할 수 없는 경우에는 #pragma 0414를 사용합니다.
다음 샘플에서는 CS0414 경고가 발생할 수 있는 한 가지 경우를 보여 줍니다.
// CS0414
// compile with: /W3
class C
{
private int i = 1; // CS0414
public static void Main()
{ }
}
참고 변수 i가 protected or public으로 선언되는 경우에는 파생 클래스에서 이 변수를 사용하는지 또는 다른 클라이언트 코드에서 이 클래스를 인스턴스화하고 해당 변수를 참조하는지 컴파일러가 알 수 없으므로 오류가 발생하지 않습니다.