변수 자체를 호출하는 대신 null 값 유형에 .Value 멤버를 사용하고 싶습니다.Nullable 변수 유형 - .value member
예 :
bool? b = 참;
왜 b를 사용하는 대신 b.Value를 사용하여 값을 얻습니까? .Value 호출이 추가하는 이점 또는 기능은 무엇입니까?
변수 자체를 호출하는 대신 null 값 유형에 .Value 멤버를 사용하고 싶습니다.Nullable 변수 유형 - .value member
예 :
bool? b = 참;
왜 b를 사용하는 대신 b.Value를 사용하여 값을 얻습니까? .Value 호출이 추가하는 이점 또는 기능은 무엇입니까?
value 속성은 읽기 전용이며 실제 값 유형을 반환합니다. value 속성은 결코 null 일 수 없습니다.
nullable이 값을 반환 할 것으로 예상되는 경우 .HasValue를 확인한 다음 값을 참조하십시오. 당신이 일반 부울에 Null 허용의 값을 할당 할 경우 예를 들어, 당신은이 값의 참조해야한다 : 그러나
bool? nullableBool = null;
if (nullableBool.HasValue)
{
bool realBool = nullableBool.Value;
}
, 다음 하지 않습니다 컴파일 :
bool? nullableBool = true;
bool realBool = nullableBool; // Won't work
.Value는 bool이 아닌 bool을 반환합니까? nullable 타입을 기대하지 않는 함수의 파라미터로 사용할 수 있습니다.
유일한 차이점은 두 가지 유형입니다. 당신은 bool이 있다면? 그러면 null 허용 유형의 bool입니다.
당신은 당신이 실제로 부울 아닌 부울을 반환하고 b.Value를 호출 할 경우?.
미묘하지만 개체의 nullable 버전이 필요하면 .Value 속성을 사용하십시오. 를 이용해서 방법/기본 유형의 속성을 사용하려는 경우 내가
오타 . 더러운 = 미묘. –
는 나에게는 너무 값이 아니다. bool에 실제로 적용되지 않습니다. 나를 DateTime
로 설명하자
DateTime? d;
int month = d.Value.Month;
당신은 날짜 시간 때문에, D에서 직접 월 속성에 액세스 할 수 없습니다? 이 속성이 없습니다.
유용한 재산 "HasValue는"있는 그대로
좋아요! 그건 의미가 있습니다. 고마워요 :)) – Valerie