Mon code est le suivantPourquoi compiler l'erreur "Utilisation de variable locale non affectée"?
int tmpCnt;
if (name == "Dude")
tmpCnt++;
Pourquoi est-il une erreur Use of unassigned local variable tmpCnt
? Je sais que je ne l'ai pas explicitement initialisé mais en raison de Default Value Table un type de valeur est initialisé avec 0
de toute façon. La référence me rappelle également:
Rappelez-vous que l'utilisation de variables non initialisées en C# n'est pas autorisée.
Mais pourquoi dois-je le faire explicitement si c'est déjà fait par défaut? Ne gagnerait-il pas de performance si je n'avais pas à le faire? Je me demandais ...
Quelqu'un peut-il m'aider avec le titre? Impossible de trouver un raccord pour celui-ci: -S – theknut
J'ai une structure locale, jamais initialisée, compilée sans erreur. Aujourd'hui, j'ai créé une structure différente, traitée de manière identique, avec "erreur variable locale non initialisée". Tous ses * membres * ont été mis à une valeur avant utilisation, mais je ne pouvais pas d'abord le mettre à null, car il était «juste» une structure. La structure compilée ne contenait que des ints, des bools et des chaînes. Celui qui a donné l'erreur contenait aussi DateTimes. "MyStructType myStruct = new MyStructType();" tué l'erreur. Pas la première fois que j'ai été mordu en manquant quelque chose à quelques niveaux. – mickeyf