Ich habe eine implizite Variable yesCount
, die von einem ternären Operator initialisiert wird, der ein int oder eine Dezimalzahl zurückgibt.Implizite Variablendeklaration und ternäre Zuweisung
List<int> simulationsCounters= new List<int>();
simulationsCounters.Add(5);
var yesCount = simulationsCounters.Length > 0
? simulationsCounters[0]
: 0m;
Warum kompiliert der Compiler yesCount immer als Dezimalzahl? Welchen Prozess folgt daraus, um dies abzuleiten?
"Warum kompiliert der Compiler immer yesCount als Dezimalzahl" - weil es "immer" sein muss * etwas * (das gleiche Etwas) und gegeben 'int' und' dezimal', die Vorrangregeln sagen 'dezimal' (implizit vs explizit) –
Diese Rede Zitate schneiden mich tief. Ich werde jetzt eine Karriere aufgeben. Vielen Dank. – theIrishUser