C #, Operator '??' kann nicht auf Operanden vom Typ 'dezimal' und 'dezimal' angewendet werden

8
%Vor%

Fehlermeldung sagen:

Operator '??' kann nicht auf Operanden vom Typ 'Dezimal' und 'Dezimal' angewendet werden

Warum funktioniert es nicht und wie soll ich es funktionieren lassen?

    
Expert wanna be 18.09.2012, 15:01
quelle

4 Antworten

13

Der decimal -Typ darf nicht null sein, daher ergibt der Nullkoaleszenzoperator hier keinen Sinn. Setzen Sie _v1 auf value .

    
Rawling 18.09.2012, 15:02
quelle
5

Dies sind Werttypen und können nicht null sein, Sie können Nullable<decimal>

verwenden %Vor%     
Nasreddine 18.09.2012 15:02
quelle
1

ist es eine Dezimalzahl? oder eine Dezimalzahl

das ?? arbeitet mit einer Dezimalzahl? aber keine Dezimalzahl, da eine Dezimalzahl niemals null sein kann.

Ссылка

    
tehdoommarine 18.09.2012 15:03
quelle
1

Das ist der Nullkoaleszenzoperator . Da Dezimal nicht Null sein kann, hat es keine Verwendung mit Dezimal.

Sie können ein decimal? verwenden, das auf null gesetzt werden kann, wenn Sie diese Funktionalität benötigen:

%Vor%     
NominSim 18.09.2012 15:03
quelle

Tags und Links