C#-ReferenzC# Reference

Dieser Abschnitt enthält Referenzmaterial zu Schlüsselwörtern, Operatoren, Sonderzeichen, Präprozessordirektiven, Compileroptionen sowie Compilerfehlern und -warnmeldungen von C#.This section provides reference material about C# keywords, operators, special characters, preprocessor directives, compiler options, and compiler errors and warnings.

In diesem AbschnittIn This Section

C#-SchlüsselwörterC# Keywords
Enthält Links zu Informationen über C#-Schlüsselwörtern und zur Syntax.Provides links to information about C# keywords and syntax.

C#-OperatorenC# Operators
Enthält Links zu Informationen über C#-Operatoren und zur Syntax.Provides links to information about C# operators and syntax.

C#-SonderzeichenC# Special Characters
Enthält Links zu Informationen über kontextbezogene Sonderzeichen in C# und deren Verwendung.Provides links to information about special contextual characters in C# and their usage.

C#-PräprozessoranweisungenC# Preprocessor Directives
Enthält Links zu Informationen über die Compilerbefehle zum Einbetten in C#-Quellcode.Provides links to information about compiler commands for embedding in C# source code.

C#-CompileroptionenC# Compiler Options
Enthält Informationen über Compileroptionen und ihre Verwendung.Includes information about compiler options and how to use them.

C#-CompilerfehlerC# Compiler Errors
Enthält Codeausschnitte, die die Ursache und Korrektur der C#-Compilerfehler und -warnungen veranschaulichen.Includes code snippets that demonstrate the cause and correction of C# compiler errors and warnings.

C#-ProgrammiersprachenspezifikationC# Language Specification
Die C# 6.0-Sprachspezifikation.The C# 6.0 language specification. Dies ist ein Entwurfsvorschlag für die C# 6.0-Sprache.This is a draft proposal for the C# 6.0 language. Dieses Dokument wird durch die Zusammenarbeit mit dem Ecma International-Ausschuss für C#-Standards weiterentwickelt.This document will be refined through work with the ECMA C# standards committee. Version 5.0 wurde im Dezember 2017 als Dokument Standard ECMA-334, 5. Edition veröffentlicht.Version 5.0 has been released in December 2017 as the Standard ECMA-334 5th Edition document.

Die Features, die in C#-Versionen nach 6.0 implementiert wurden, werden in Sprachspezifikationsvorschlägen dargestellt.The features that have been implemented in C# versions after 6.0 are represented in language specification proposals. Diese Dokumente beschreiben die Deltas der Sprachspezifikation, um diese neuen Features hinzuzufügen.These documents describe the deltas to the language spec in order to add these new features. Sie liegen in Entwurfsform vor.These are in draft proposal form. Diese Spezifikationen werden weiterentwickelt und zur formellen Prüfung und Implementierung in eine zukünftige Version des C#-Standards an den Ecma International-Normungsausschuss weitergeleitet.These specifications will be refined and submitted to the ECMA standards committee for formal review and incorporation into a future version of the C# Standard.

Vorschläge für die C# 7.0-SpezifikationC# 7.0 Specification Proposals
Es gibt eine Reihe neuer Features, die in C# 7.0 implementiert wurden.There are a number of new features implemented in C# 7.0. Dazu gehören der Musterabgleich, lokale Funktionen, out-Variablendeklarationen, throw-Ausdrücke, binäre Literale und Zahlentrennzeichen.They include pattern matching, local functions, out variable declarations, throw expressions, binary literals, and digit separators. Dieser Ordner enthält die Spezifikationen für jedes dieser Features.This folder contains the specifications for each of those features.

Vorschläge für die C# 7.1-SpezifikationC# 7.1 Specification Proposals
In C# 7.1 wurden neue Features hinzugefügt.There are new features added in C# 7.1. Erstens können Sie eine Main-Methode schreiben, die Task oder Task<int> zurückgibt.First, you can write a Main method that returns Task or Task<int>. Dadurch können Sie den async-Modifizierer Main hinzufügen.This enables you to add the async modifier to Main. Der default-Ausdruck kann ohne Typ an Stellen verwendet werden, an denen der Typ abgeleitet werden kann.The default expression can be used without a type in locations where the type can be inferred. Darüber hinaus können Tupelmembernamen abgeleitet werden.Also, tuple member names can be inferred. Schließlich kann Mustervergleich mit Generics verwendet werden.Finally, pattern matching can be used with generics.

Vorschläge für die C# 7.2-SpezifikationC# 7.2 Specification Proposals
C# 7.2 hat eine Reihe von kleinen Features hinzugefügt.C# 7.2 added a number of small features. Sie können Argumente durch einen schreibgeschützten Verweis mit dem Schlüsselwort in übergeben.You can pass arguments by readonly reference using the in keyword. Es gibt eine Reihe von Low-Level-Änderungen, die die Sicherheit zur Kompilierzeit für Span und verwandte Typen unterstützen.There are a number of low-level changes to support compile-time safety for Span and related types. Sie können benannte Argumente verwenden, bei denen spätere Argumente in einigen Situationen positional sind.You can use named arguments where later arguments are positional, in some situations. Mit dem private protected-Zugriffsmodifizierer können Sie festlegen, dass Aufrufer auf abgeleitete Typen beschränkt sind, die in derselben Assembly implementiert sind.The private protected access modifier enables you to specify that callers are limited to derived types implemented in the same assembly. Der ?:-Operator kann in einen Verweis auf eine Variable aufgelöst werden.The ?: operator can resolve to a reference to a variable. Sie können auch hexadezimale und binäre Zahlen mit einem führenden Zifferntrennzeichen formatieren.You can also format hexadecimal and binary numbers using a leading digit separator.

Vorschläge für die C# 7.3-SpezifikationC# 7.3 Specification Proposals
C# 7.3 ist eine weitere Unterversion, die mehrere kleine Aktualisierungen enthält.C# 7.3 is another point release that includes several small updates. Sie können neue Einschränkungen für generische Typparameter verwenden.You can use new constraints on generic type parameters. Weitere Änderungen erleichtern das Arbeiten mit fixed-Feldern, einschließlich der Verwendung von stackalloc-Zuordnungen.Other changes make it easier to work with fixed fields, including using stackalloc allocations. Lokale Variablen, die mit dem Schlüsselwort ref deklariert wurden, können neu zugewiesen werden, um sich auf neuen Speicher zu beziehen.Local variables declared with the ref keyword may be reasssigned to refer to new storage. Sie können Attribute für automatisch implementierte Eigenschaften festlegen, die auf das vom Compiler generierte Sicherungsfeld abzielen.You can place attributes on auto-implemented properties that target the compiler-generated backing field. Ausdrucksvariablen können in Initialisierern verwendet werden.Expression variables can be used in initializers. Tupel können hinsichtlich ihrer Gleichheit (oder Ungleichheit) verglichen werden.Tuples can be compared for equality (or inequality). Außerdem wurden einige Verbesserungen an der Überladungsauflösung vorgenommen.There have also been some improvements to overload resolution.

Vorschläge für die C# 8.0-SpezifikationC# 8.0 Specification Proposals
C# 8.0 wird mit .NET Core 3.0 zur Verfügung gestellt.C# 8.0 is available with .NET Core 3.0. Zu den Features gehören Nullable-Verweistypen, rekursiver Musterabgleich, Standardschnittstellenmethoden, asynchrone Streams, Bereiche und Indizes, musterbasierte using-Anweisung und using-Deklarationen, NULL-Sammelzuweisungen sowie schreibgeschützte Instanzmember.The features include nullable reference types, recursive pattern matching, default interface methods, async streams, ranges and indexes, pattern based using and using declarations, null coalescing assignment, and readonly instance members.

Leitfaden für C#C# Guide
Enthält ein Portal für die Visual C#-Dokumentation.Provides a portal to Visual C# documentation.

Verwenden der Visual Studio-Entwicklungsumgebung für C#Using the Visual Studio Development Environment for C#
Enthält Links zu konzeptionellen und aufgabenspezifischen Themen, in denen IDE und Editor beschrieben werden.Provides links to conceptual and task topics that describe the IDE and Editor.

C#-ProgrammierhandbuchC# Programming Guide
Enthält Informationen zur Verwendung der C#-Programmiersprache.Includes information about how to use the C# programming language.