Conversion implicite de décimal en double en C#
Lors de la tentative d'affectation d'une variable décimale à une variable double, comme le montre l'extrait de code ci-dessous, une erreur de compilation peut survenir :
decimal trans = trackBar1.Value / 5000; this.Opacity = trans;
Le message d'erreur indique généralement un échec de conversion implicite d'un type décimal en type double.
Pour résoudre ce problème, une conversion explicite en double peut être utilisée :
double trans = (double) trackBar1.Value / 5000.0; this.Opacity = trans;
Alternativement, la constante peut être explicitement identifiée comme un double à l'aide du suffixe .0 :
double trans = trackBar1.Value / 5000.0;
Une autre option consiste à utiliser le suffixe d pour spécifier un double :
double trans = trackBar1.Value / 5000d;
En identifiant explicitement la constante comme un double, le compilateur peut effectuer la conversion correctement sans nécessiter de conversion explicite.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!