2013-10-11 4 views
0

난 그냥 다음 구문은 C#에서 합법적 인 경우 알고 싶어nullable 변수를 음수로 만들 수 있습니까?

기본적으로
decimal price = -someVariable ?? 0M; 

, 나는 널 (NULL) 변수를 만들 수있는 음수가 널 (null)입니다 아닌지 모르고?

+0

'진수 가격 = Math.Min ((somevariable ?? 0M) * -1 (somevariable : 그러나 명확 위해 다음과 같이 재 작성 할 수 있습니다 ?? –

+0

또한 컴파일러/테스트에서 예 또는 아니오를 알려줄 것입니다 :) –

답변

3

null이 될 수있는 someVariable에 음수 기호가 첨부되어 있기 때문에 그럴 수는 없습니다.하지만 괄호 안에 null 병합을 포함 할 수 있습니다. someVariable입니다 이 -someVariable 될 경우

decimal price = -(someVariable ?? 0M); 
+0

그래, 그게 내가 방황하고 있었던 바로 그거야. 감사. – user1206480

+0

null이 아니고 null이 아닌 것처럼 끝내는 것처럼 올바르지 않습니다. – Dave

2

예 이것은 합법적이다.

decimal price = -(someVariable ?? 0M); 

또 다른 예

decimal? a = null; 
decimal b = 5; 
decimal? c = a + b; // c == null 
관련 문제