Le C# 4.0 compilateur ne se plaint pas (pas même un avertissement):vraiment génial C# comportement du compilateur avec littéraux nullables
if(10.0 > null + 1)
{
}
if (myDoubleValue > null)
{
}
Et il semble être toujours faux. Qu'est-ce qui se passe ici? Est-ce que null est automatiquement converti en Nullable<double>
ou quelque chose?
Si oui, pourquoi ça ne marche pas alors:
double myDoubleValue = null + 1;
Aussi, pourquoi voudrais-je jamais un tel comportement. Pourquoi est-ce une bonne chose qu'il est possible de jouer avec des littéraux comme celui-ci.
À droite J'ai accidentellement éteint les avertissements. Avec les avertissements activés, je n'aurais même pas à poser la question car le compilateur explique tout dans l'avertissement. – bitbonk