1 votes

Pourquoi puis-je passer un type de valeur nullable dans un type de valeur non nullable ?

J'ai accidentellement écrit un code aujourd'hui qui ressemblait à ceci :

Private Sub Foo()
    Dim i as Nullable(Of Integer)
    Bar(i)
End Sub

Private Sub Bar(myInt as Integer)
    ''//Do Stuff
End Sub

J'ai immédiatement remarqué le problème, mais j'avais déjà appuyé sur le bouton d'exécution. Il a été compilé avec succès, je l'ai exécuté jusqu'à la section et il a lancé une exception.

Vous ne pouvez pas faire cela en C#, cela donne une erreur de compilation "cannot convert from 'int?' to 'int'".

Existe-t-il un interrupteur de type "Option Explicit" que je peux activer pour m'assurer que ce type d'erreur ne se reproduira pas ?

4voto

shahkalpesh Points 21553

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X