Heute ab ich längere Zeit nach einem Bug gesucht. Der Folgende Code wollte einfach nicht die korrekte Differenz ausrechenen:
int? geliefert = 3; int? aktuell = 2; int diff = geliefert??0 - aktuell??0;
Bis ich endlich draufkam, dass das Minus ja nie ausgewertet wird, da einfach der erste Wert zurückgeliefert wird…
Also gut, wieder was gelernt, wenn man den ??-operator verwendet. Hab das ganze in Klammer gepackt, dann ging es wunderbar…
int diff = (geliefert ?? 0) - (aktuell ?? 0);