Skip to main content

Types anonyme - var en C#

Quand j'ai vu pour la première fois LINQ, j'ai sauté au plafond en voyant l'utilisation du mot clé var pour déclarer une variable, au lieu d'indiquer son type.

Pour un langage typé comme C#, c'était surprenant de voir un tel laxisme. Eh bien il ne s'agit pas de laxisme: contrairement à VB 6, par exemple, où var représentait une variable quelconque, c'est le compilateur qui détecte en C# le typage correspondant à la variable (d'après le contexte) et qui la type fortement. Voir le code ci-après pour un exemple (merci Scott Guthrie):

Bien sûr, ce peut être source d'erreurs, mais probablement pas aussi graves qu'avec un typage "late-bound".

Pour en savoir plus, allez voir l'excellent article de Scott Guthrie à ce sujet.

Pour ceux qui voudraient l'équivalent du var de VB6 ou du void* de C++, il reste bien sûr le object de C#, mais attention au boxing avec les types valeur!

Comments

Popular posts from this blog

Learn Meteor book available

I'm pleased to announce the general release of my Learn Meteor book. It is now available as an ebook or print book from various sources: Learn Meteor print (paperback) on Lulu Learn Meteor ebook on LeanPub Learn Meteor ebook on Barnes & Noble Learn Meteor ebook on iBooks Learn Meteor ebook on Kobo Learn Meteor ebook on Scribd Learn Meteor ebook on Inktera Page Foundry Learn Meteor ebook on 24symbols Learn Meteor ebook on Amazon US Learn Meteor ebook on Amazon UK Learn Meteor ebook on Amazon France Learn Meteor ebook on Amazon Deutschland Learn Meteor ebook on Amazon Canada Learn Meteor ebook on Amazon India Learn Meteor ebook on Amazon Brasil Learn Meteor ebook on Amazon Mexico Learn Meteor ebook on Amazon España Learn Meteor ebook on Amazon Italia Learn Meteor ebook on Amazon Netherlands Learn Meteor ebook on Amazon Japan Learn Meteor ebook on Amazon Australia More sources are coming soon for the print version. Learn Meteor has been a fun experienc