Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
- Foreword
- Introduction
- §1 Scope
- §2 Normative references
- §3 Terms and definitions
- §4 General description
- §5 Conformance
- §6 Lexical structure
- §7 Basic concepts
- §8 Types
- §8.1 General
- §8.2 Reference types
- §8.3 Value types
- §8.3.1 General
- §8.3.2 The System.ValueType type
- §8.3.3 Default constructors
- §8.3.4 Struct types
- §8.3.5 Simple types
- §8.3.6 Integral types
- §8.3.7 Floating-point types
- §8.3.8 The Decimal type
- §8.3.9 The Bool type
- §8.3.10 Enumeration types
- §8.3.11 Tuple types
- §8.3.12 Nullable value types
- §8.3.13 Boxing and unboxing
- §8.4 Constructed types
- §8.5 Type parameters
- §8.6 Expression tree types
- §8.7 The dynamic type
- §8.8 Unmanaged types
- §8.9 Reference Types and nullability
- §9 Variables
- §9.1 General
- §9.2 Variable categories
- §9.3 Default values
- §9.4 Definite assignment
- §9.4.1 General
- §9.4.2 Initially assigned variables
- §9.4.3 Initially unassigned variables
- §9.4.4 Precise rules for determining definite assignment
- §9.4.4.1 General
- §9.4.4.2 General rules for statements
- §9.4.4.3 Block statements, checked, and unchecked statements
- §9.4.4.4 Expression statements
- §9.4.4.5 Declaration statements
- §9.4.4.6 If statements
- §9.4.4.7 Switch statements
- §9.4.4.8 While statements
- §9.4.4.9 Do statements
- §9.4.4.10 For statements
- §9.4.4.11 Break, continue, and goto statements
- §9.4.4.12 Throw statements
- §9.4.4.13 Return statements
- §9.4.4.14 Try-catch statements
- §9.4.4.15 Try-finally statements
- §9.4.4.16 Try-catch-finally statements
- §9.4.4.17 Foreach statements
- §9.4.4.18 Using statements
- §9.4.4.19 Lock statements
- §9.4.4.20 Yield statements
- §9.4.4.21 General rules for constant expressions
- §9.4.4.22 General rules for simple expressions
- §9.4.4.23 General rules for expressions with embedded expressions
- §9.4.4.24 Invocation expressions and object creation expressions
- §9.4.4.25 Simple and deconstructing assignment expressions
- §9.4.4.26 && expressions
- §9.4.4.27 || expressions
- §9.4.4.28 ! expressions
- §9.4.4.29 ?? expressions
- §9.4.4.30 ?: expressions
- §9.4.4.31 Anonymous functions
- §9.4.4.32 Throw expressions
- §9.4.4.33 Rules for variables in local functions
- §9.4.4.34 is-pattern expressions
- §9.4.4.35 ?. expressions
- §9.4.4.36 Boolean constant expressions
- §9.4.4.37 ==/!= expressions
- §9.4.4.38 is operator and is pattern expressions
- §9.5 Variable references
- §9.6 Atomicity of variable references
- §9.7 Reference variables and returns
- §10 Conversions
- §10.1 General
- §10.2 Implicit conversions
- §10.2.1 General
- §10.2.2 Identity conversion
- §10.2.3 Implicit numeric conversions
- §10.2.4 Implicit enumeration conversions
- §10.2.5 Implicit interpolated string conversions
- §10.2.6 Implicit nullable conversions
- §10.2.7 Null literal conversions
- §10.2.8 Implicit reference conversions
- §10.2.9 Boxing conversions
- §10.2.10 Implicit dynamic conversions
- §10.2.11 Implicit constant expression conversions
- §10.2.12 Implicit conversions involving type parameters
- §10.2.13 Implicit tuple conversions
- §10.2.14 User-defined implicit conversions
- §10.2.15 Anonymous function conversions and method group conversions
- §10.2.16 Default literal conversions
- §10.2.17 Implicit throw conversions
- §10.2.18 Switch expression conversion
- §10.2.19 Implicit object-creation conversions
- §10.2.20 Implicit conditional expression conversions
- §10.2.21 Anonymous function type conversion
- §10.2.22 Implicit collection expression conversions
- §10.2.23 Implicit inline array conversions
- §10.3 Explicit conversions
- §10.3.1 General
- §10.3.2 Explicit numeric conversions
- §10.3.3 Explicit enumeration conversions
- §10.3.4 Explicit nullable conversions
- §10.3.5 Explicit reference conversions
- §10.3.6 Explicit tuple conversions
- §10.3.7 Unboxing conversions
- §10.3.8 Explicit conversions involving type parameters
- §10.3.9 User-defined explicit conversions
- §10.4 Standard conversions
- §10.5 User-defined conversions
- §10.6 Conversions involving nullable types
- §10.6.1 Nullable Conversions