Nelle prime versioni di C# per dichiarare una variabile e istanziarla, si deve dichiararne il tipo sia in fase di dichiarazione che in fase di istanziazione come in questo esempio.
MyType myvar = new MyType();
Con l'avvento di LINQ e quindi la necessità di dichiarare tipi anonimi a seguito di projection, C# ha introdotto la parola chiave var con lo scopo di non dover dichiarare il tipo della variabile che quindi veniva dedotto dal codice alla destra del carattere "=".
var myvar = list.Select(c => new { c.Prop1, c.Prop2 }); var myvar2 = new MyType();
Col tempo, l'uso della parola chiave var è stato largamente, ma molti sviluppatori preferiscono ancora dichiarare il tipo prima variabile (laddove possibile). Per dare maggior possibilità di scelta, C# 9 introduce la possibilità di usare la parola chiave new senza specificare il tipo, ma solo nel caso che la variabile alla sinistra del carattere "=" specifichi il tipo.
MyType myvar = new();
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Sfruttare MQTT in cloud e in edge con Azure Event Grid
Reactive form tipizzati con modellazione del FormBuilder in Angular
Usare un KeyedService di default in ASP.NET Core 8
Ottenere il contenuto di una cartella FTP con la libreria FluentFTP
Recuperare un elemento inserito nella cache del browser tramite API JavaScript
Usare lo spread operator con i collection initializer in C#
Configurare dependabot per aggiornare le dipendenze di terze parti con GitHub Actions
Definire stili a livello di libreria in Angular
Trasformare qualsiasi backend in un servizio GraphQL con Azure API Management
Disabilitare automaticamente un workflow di GitHub
Hosting di componenti WebAssembly in un'applicazione Blazor static
Implementare l'infinite scroll con QuickGrid in Blazor Server
I più letti di oggi
- Impostare un elemento come ridimensionabile tramite CSS
- Proteggersi dagli attacchi di Open Redirect in ASP.NET Core MVC
- Personalizzare l'errore del rate limiting middleware in ASP.NET Core
- Accedere alla console di una Azure Container App
- Modificare i metadati nell'head dell'HTML di una Blazor Web App
- Gli oggetti CallOut di Expression Blend 4.0
- SQL Server 2005 December CTP
- Sfruttare le nuove tipologie di input di HTML5 con ASP.NET 4.0
- Upload da una pagina web con Dundas Upload