Riferimenti per C#C# Reference

Questa sezione offre informazioni di riferimento su parole chiave, operatori, caratteri speciali, direttive del preprocessore, opzioni del compilatore ed errori e avvisi del compilatore in C#.This section provides reference material about C# keywords, operators, special characters, preprocessor directives, compiler options, and compiler errors and warnings.

In questa sezioneIn This Section

Parole chiave di C#C# Keywords
Fornisce collegamenti a informazioni su sintassi e parole chiave di C#.Provides links to information about C# keywords and syntax.

Operatori C#C# Operators
Fornisce collegamenti a informazioni su sintassi e operatori di C#.Provides links to information about C# operators and syntax.

Caratteri speciali di C#C# Special Characters
Fornisce collegamenti a informazioni sui caratteri speciali contestuali di C# e sul relativo utilizzo.Provides links to information about special contextual characters in C# and their usage.

Direttive per il preprocessore C#C# Preprocessor Directives
Fornisce collegamenti a informazioni sui comandi del compilatore per l'incorporamento nel codice sorgente C#.Provides links to information about compiler commands for embedding in C# source code.

Opzioni del compilatore C#C# Compiler Options
Include informazioni sulle opzioni del compilatore e su come usarle.Includes information about compiler options and how to use them.

Errori del compilatore C#C# Compiler Errors
Include frammenti di codice che illustrano la causa e la correzione per gli errori del compilatore e gli avvisi di C#.Includes code snippets that demonstrate the cause and correction of C# compiler errors and warnings.

Specifiche del linguaggio C#C# Language Specification
Specifica del linguaggio C# 6.0.The C# 6.0 language specification. Si tratta di una proposta bozza per il linguaggio C# 6.0.This is a draft proposal for the C# 6.0 language. La versione 5.0 è stata rilasciata a dicembre 2017 come documento Standard ECMA-334 5th Edition.Version 5.0 has been released in December 2017 as the Standard ECMA-334 5th Edition document.

Le funzionalità che sono state implementate nelle versioni di C# successive alla 6.0 sono rappresentate in proposte di specifica del linguaggio.The features that have been implemented in C# versions after 6.0 are represented in language specification proposals. Questi documenti descrivono i progetti per la specifica del linguaggio per l'aggiunta di queste nuove funzionalità.These documents describe the deltas to the language spec in order to add these new features.

Proposte per il linguaggio C# 7.0C# 7.0 Language Proposals
Esistono varie nuove funzionalità implementate in C# 7.0,There are a number of new features implemented in C# 7.0. tra le quali criteri di ricerca, funzioni locali, dichiarazioni di variabili out, espressioni throw, valori letterali binari e separatori di cifre.They include pattern matching, local functions, out variable declarations, throw expressions, binary literals, and digit separators. Questa cartella contiene le specifiche per ognuna di tali funzionalità.This folder contains the specifications for each of those features.

Proposte per il linguaggio C# 7.1C# 7.1 Language Proposals
In C# 7.1 sono state aggiunte nuove funzionalità.There are new features added in C# 7.1. Prima di tutto, è possibile scrivere un metodo Main che restituisce Task o Task<int>.First, you can write a Main method that returns Task or Task<int>. In questo modo è possibile aggiungere il modificatore async a Main.This enables you to add the async modifier to Main. L'espressione default può essere usata senza un tipo nelle posizioni in cui il tipo può essere dedotto.The default expression can be used without a type in locations where the type can be inferred. Possono essere dedotti anche i nomi dei membri delle tuple.Also, tuple member names can be inferred. Infine, è possibile usare criteri di ricerca con generics.Finally, pattern matching can be used with generics.

Proposte per il linguaggio C# 7.2C# 7.2 Language Proposals
In C# 7.2 sono state aggiunte varie piccole funzionalità.C# 7.2 added a number of small features. È possibile passare argomenti per riferimento di sola lettura tramite la parola chiave in.You can pass arguments by readonly reference using the in keyword. Sono state introdotte numerose modifiche di basso livello per supportare la sicurezza in fase di compilazione per Span e i tipi correlati.There are a number of low-level changes to support compile-time safety for Span and related types. È possibile usare argomenti denominati in cui gli argomenti successivi sono posizionali, in alcune situazioni.You can use named arguments where later arguments are positional, in some situations. Il modificatore di accesso private protected consente di specificare che i chiamanti sono limitati ai tipi derivati implementati nello stesso assembly.The private protected access modifier enables you to specify that callers are limited to derived types implemented in the same assembly. L' operatore ?: può essere risolto come riferimento a una variabile.The ?: operator can resolve to a reference to a variable. È anche possibile formattare i numeri esadecimali e binari usando un separatore di cifra iniziale.You can also format hexadecimal and binary numbers using a leading digit separator.

Proposte per il linguaggio C# 7.3C# 7.3 Language Proposals
C# 7.3 è un'altra versione secondaria che include numerosi piccoli aggiornamenti.C# 7.3 is another point release that includes several small updates. È possibile usare nuovi vincoli per i parametri di tipo generico.You can use new constraints on generic type parameters. Altre modifiche rendono più facile lavorare con i campi fixed, incluso l'uso delle allocazioni stackalloc.Other changes make it easier to work with fixed fields, including using stackalloc allocations. Le variabili locali dichiarate con la parola chiave ref potrebbero essere riassegnate per fare riferimento alla nuova risorsa di archiviazione.Local variables declared with the ref keyword may be reasssigned to refer to new storage. È possibile posizionare attributi in proprietà implementate automaticamente destinate al campo di supporto generato dal compilatore.You can place attributes on auto-implemented properties that target the compiler-generated backing field. È possibile usare variabili di espressione negli inizializzatori.Expression variables can be used in initializers. Le tuple possono essere confrontate per verificarne l'uguaglianza (o la disuguaglianza).Tuples can be compared for equality (or inequality). Sono stati introdotti anche alcuni miglioramenti per la risoluzione dell'overload.There have also been some improvements to overload resolution.

Proposte per il linguaggio C# 8.0 C# 8.0 è disponibile in anteprima.C# 8.0 Language Proposals C# 8.0 is available in preview. Le proposte seguenti corrispondono alle versioni correnti delle specifiche per tali funzionalità.The following proposals are the current versions of the specifications for those features. Alcune sono più complete, per altre i lavori sono ancora in corso.Some are more complete; some are still a work in progress. Le funzionalità fornite nelle anteprime includono i tipi riferimento nullable, i criteri di ricerca ricorsivi, i flussi asincroni, intervalli e indici, istruzioni using basate su criteri e dichiarazioni using, assegnazione di unione null.The features that have shipped in previews include nullable reference types, recursive pattern matching, async streams, ranges and indexes, pattern based using and using declarations, and null coalescing assignment.

Guida a C#C# Guide
Fornisce un portale per la documentazione di Visual C#.Provides a portal to Visual C# documentation.

Using the Visual Studio Development Environment for C# (Uso dell'ambiente di sviluppo di Visual Studio per C#)Using the Visual Studio Development Environment for C#
Fornisce i collegamenti ad argomenti relativi a concetti e attività che descrivono IDE e l'editor.Provides links to conceptual and task topics that describe the IDE and Editor.

Guida per programmatori C#C# Programming Guide
Include informazioni su come usare il linguaggio di programmazione C#.Includes information about how to use the C# programming language.