Enum VS 속성 이름 충돌에 대해 this, this 및 this 개의 질문이 있습니다.C# Enum VS Nullable 속성 이름 충돌
내 질문 대신 내가 이름 충돌이 아래 코드에서 증명 해결하는 방법을 알고 싶습니다, 명명 규칙에 대한되지 않습니다 :
namespace Test
{
public class Person
{
// 1)
// Gender? Gender { get; set; }
// 2)
Gender Gender { get; set; }
public Person()
{
// 1 - Error CS1061: Type `Test.Gender?' does not contain a definition for `Male' and no extension method `Male' of type `Test.Gender?' could be found (are you missing a using directive or an assembly reference?) (CS1061) (Test)
// 2 - OK
Gender = Gender.Male;
}
}
public enum Gender
{
Male = 1,
Female
}
}
I)의 2와 Gender Gender { get; set; }
을 속성을 선언하는 경우 내가 같이 선언하는 경우 코드는 코드에서 주석 1) Gender? Gender { get; set; }
(위) 전
Error CS1061: Type `Test.Gender?' does not contain a definition for `Male' and no extension method `Male' of type `Test.Gender?' could be found (are you missing a using directive or an assembly reference?) (CS1061) (Test)
이 왜 일어날 않는 오류가 발생하지만, 성공적으로 컴파일?
@Bobson을 : 내가 생각하는 내 왜 내가 그렇게 생각하는지 편집해라. –
@Bobson :이 문제를 어떻게 해결할 수 있는지 보여주기 위해 편집했습니다. 사용중인 네임 스페이스에 맞게 조정하십시오. –