{"id":347441,"date":"2024-10-20T00:26:16","date_gmt":"2024-10-20T00:26:16","guid":{"rendered":"https:\/\/pdfstandards.shop\/product\/uncategorized\/bs-iso-iec-232702018\/"},"modified":"2024-10-25T23:56:48","modified_gmt":"2024-10-25T23:56:48","slug":"bs-iso-iec-232702018","status":"publish","type":"product","link":"https:\/\/pdfstandards.shop\/product\/publishers\/bsi\/bs-iso-iec-232702018\/","title":{"rendered":"BS ISO\/IEC 23270:2018"},"content":{"rendered":"
This specification describes the form and establishes the interpretation of programs written in the C# programming language. It describes<\/p>\n
The representation of C# programs;<\/p>\n<\/li>\n
The syntax and constraints of the C# language;<\/p>\n<\/li>\n
The semantic rules for interpreting C# programs;<\/p>\n<\/li>\n
The restrictions and limits imposed by a conforming implementation of C#.<\/p>\n<\/li>\n<\/ul>\n
This specification does not describe<\/p>\n
The mechanism by which C# programs are transformed for use by a data-processing system;<\/p>\n<\/li>\n
The mechanism by which C# applications are invoked for use by a data-processing system;<\/p>\n<\/li>\n
The mechanism by which input data are transformed for use by a C# application;<\/p>\n<\/li>\n
The mechanism by which output data are transformed after being produced by a C# application;<\/p>\n<\/li>\n
The size or complexity of a program and its data that will exceed the capacity of any specific data-processing system or the capacity of a particular processor;<\/p>\n<\/li>\n
All minimal requirements of a data-processing system that is capable of supporting a conforming implementation.<\/p>\n<\/li>\n<\/ul>\n
PDF Pages<\/th>\n | PDF Title<\/th>\n<\/tr>\n | ||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
2<\/td>\n | undefined <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
5<\/td>\n | Table of Contents <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
22<\/td>\n | Blank Page <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
23<\/td>\n | Introduction <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
25<\/td>\n | 1. Scope <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
27<\/td>\n | 2. Normative references <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
29<\/td>\n | 3. Terms and definitions <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
31<\/td>\n | 4. Acronyms and abbreviations <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
33<\/td>\n | 5. General description <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
35<\/td>\n | 6. Conformance <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
37<\/td>\n | 7. Lexical structure 7.1 Programs 7.2 Grammars 7.2.1 General 7.2.2 Grammar notation <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
38<\/td>\n | 7.2.3 Lexical grammar <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
39<\/td>\n | 7.2.4 Syntactic grammar 7.2.5 Grammar ambiguities <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
40<\/td>\n | 7.3 Lexical analysis 7.3.1 General 7.3.2 Line terminators <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
41<\/td>\n | 7.3.3 Comments <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
42<\/td>\n | 7.3.4 White space <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
43<\/td>\n | 7.4 Tokens 7.4.1 General 7.4.2 Unicode character escape sequences <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
44<\/td>\n | 7.4.3 Identifiers <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
45<\/td>\n | 7.4.4 Keywords <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
46<\/td>\n | 7.4.5 Literals 7.4.5.1 General <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
47<\/td>\n | 7.4.5.2 Boolean literals 7.4.5.3 Integer literals <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
48<\/td>\n | 7.4.5.4 Real literals <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
49<\/td>\n | 7.4.5.5 Character literals <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
50<\/td>\n | 7.4.5.6 String literals <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
52<\/td>\n | 7.4.5.7 The null literal 7.4.6 Operators and punctuators 7.5 Pre-processing directives 7.5.1 General <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
54<\/td>\n | 7.5.2 Conditional compilation symbols 7.5.3 Pre-processing expressions <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
55<\/td>\n | 7.5.4 Definition directives <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
56<\/td>\n | 7.5.5 Conditional compilation directives <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
58<\/td>\n | 7.5.6 Diagnostic directives <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
59<\/td>\n | 7.5.7 Region directives 7.5.8 Line directives <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
60<\/td>\n | 7.5.9 Pragma directives <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
61<\/td>\n | 8. Basic concepts 8.1 Application startup <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
62<\/td>\n | 8.2 Application termination 8.3 Declarations <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
65<\/td>\n | 8.4 Members 8.4.1 General 8.4.2 Namespace members 8.4.3 Struct members <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
66<\/td>\n | 8.4.4 Enumeration members 8.4.5 Class members 8.4.6 Interface members 8.4.7 Array members 8.4.8 Delegate members 8.5 Member access 8.5.1 General 8.5.2 Declared accessibility <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
67<\/td>\n | 8.5.3 Accessibility domains <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
70<\/td>\n | 8.5.4 Protected access <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
71<\/td>\n | 8.5.5 Accessibility constraints <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
72<\/td>\n | 8.6 Signatures and overloading <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
73<\/td>\n | 8.7 Scopes 8.7.1 General <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
76<\/td>\n | 8.7.2 Name hiding 8.7.2.1 General 8.7.2.2 Hiding through nesting <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
77<\/td>\n | 8.7.2.3 Hiding through inheritance <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
78<\/td>\n | 8.8 Namespace and type names 8.8.1 General <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
80<\/td>\n | 8.8.2 Unqualified names 8.8.3 Fully qualified names <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
81<\/td>\n | 8.9 Automatic memory management <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
83<\/td>\n | 8.10 Execution order <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
85<\/td>\n | 9. Types 9.1 General 9.2 Reference types 9.2.1 General <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
86<\/td>\n | 9.2.2 Class types 9.2.3 The object type <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
87<\/td>\n | 9.2.4 The dynamic type 9.2.5 The string type 9.2.6 Interface types 9.2.7 Array types 9.2.8 Delegate types 9.3 Value types 9.3.1 General <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
88<\/td>\n | 9.3.2 The System.ValueType type 9.3.3 Default constructors <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
89<\/td>\n | 9.3.4 Struct types 9.3.5 Simple types <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
90<\/td>\n | 9.3.6 Integral types <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
91<\/td>\n | 9.3.7 Floating-point types <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
92<\/td>\n | 9.3.8 The decimal type <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
93<\/td>\n | 9.3.9 The bool type 9.3.10 Enumeration types 9.3.11 Nullable value types <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
94<\/td>\n | 9.3.12 Boxing and unboxing 9.4 Constructed types 9.4.1 General <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
95<\/td>\n | 9.4.2 Type arguments 9.4.3 Open and closed types <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
96<\/td>\n | 9.4.4 Bound and unbound types 9.4.5 Satisfying constraints <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
97<\/td>\n | 9.5 Type parameters 9.6 Expression tree types <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
98<\/td>\n | 9.7 The dynamic type <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
101<\/td>\n | 10. Variables 10.1 General 10.2 Variable categories 10.2.1 General 10.2.2 Static variables 10.2.3 Instance variables 10.2.3.1 General <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
102<\/td>\n | 10.2.3.2 Instance variables in classes 10.2.3.3 Instance variables in structs 10.2.4 Array elements 10.2.5 Value parameters 10.2.6 Reference parameters <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
103<\/td>\n | 10.2.7 Output parameters 10.2.8 Local variables <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
104<\/td>\n | 10.3 Default values 10.4 Definite assignment 10.4.1 General <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
105<\/td>\n | 10.4.2 Initially assigned variables 10.4.3 Initially unassigned variables 10.4.4 Precise rules for determining definite assignment 10.4.4.1 General <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
106<\/td>\n | 10.4.4.2 General rules for statements 10.4.4.3 Block statements, checked, and unchecked statements 10.4.4.4 Expression statements <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
107<\/td>\n | 10.4.4.5 Declaration statements 10.4.4.6 If statements 10.4.4.7 Switch statements 10.4.4.8 While statements 10.4.4.9 Do statements <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
108<\/td>\n | 10.4.4.10 For statements 10.4.4.11 Break, continue, and goto statements 10.4.4.12 Throw statements 10.4.4.13 Return statements <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
109<\/td>\n | 10.4.4.14 Try-catch statements 10.4.4.15 Try-finally statements 10.4.4.16 Try-catch-finally statements <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
110<\/td>\n | 10.4.4.17 Foreach statements 10.4.4.18 Using statements <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
111<\/td>\n | 10.4.4.19 Lock statements 10.4.4.20 Yield statements 10.4.4.21 General rules for constant expressions <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
112<\/td>\n | 10.4.4.22 General rules for simple expressions 10.4.4.23 General rules for expressions with embedded expressions 10.4.4.24 Invocation expressions and object creation expressions <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
113<\/td>\n | 10.4.4.25 Simple assignment expressions 10.4.4.26 && expressions <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
114<\/td>\n | 10.4.4.27 || expressions <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
115<\/td>\n | 10.4.4.28 ! expressions 10.4.4.29 ?? expressions 10.4.4.30 ?: expressions <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
116<\/td>\n | 10.4.4.31 Anonymous functions 10.5 Variable references 10.6 Atomicity of variable references <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
117<\/td>\n | 11. Conversions 11.1 General 11.2 Implicit conversions 11.2.1 General <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
118<\/td>\n | 11.2.2 Identity conversion 11.2.3 Implicit numeric conversions 11.2.4 Implicit enumeration conversions 11.2.5 Implicit nullable conversions 11.2.6 Null literal conversions <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
119<\/td>\n | 11.2.7 Implicit reference conversions 11.2.8 Boxing conversions <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
121<\/td>\n | 11.2.9 Implicit dynamic conversions 11.2.10 Implicit constant expression conversions 11.2.11 Implicit conversions involving type parameters <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
122<\/td>\n | 11.2.12 User-defined implicit conversions 11.2.13 Anonymous function conversions and method group conversions 11.3 Explicit conversions 11.3.1 General <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
123<\/td>\n | 11.3.2 Explicit numeric conversions <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
125<\/td>\n | 11.3.3 Explicit enumeration conversions 11.3.4 Explicit nullable conversions 11.3.5 Explicit reference conversions <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
126<\/td>\n | 11.3.6 Unboxing conversions <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
127<\/td>\n | 11.3.7 Explicit dynamic conversions 11.3.8 Explicit conversions involving type parameters <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
129<\/td>\n | 11.3.9 User-defined explicit conversions 11.4 Standard conversions 11.4.1 General 11.4.2 Standard implicit conversions 11.4.3 Standard explicit conversions 11.5 User-defined conversions 11.5.1 General 11.5.2 Permitted user-defined conversions <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
130<\/td>\n | 11.5.3 Evaluation of user-defined conversions <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
131<\/td>\n | 11.5.4 User-defined implicit conversions 11.5.5 User-defined explicit conversions <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
133<\/td>\n | 11.6 Conversions involving nullable types 11.6.1 Nullable Conversions 11.6.2 Lifted conversions 11.7 Anonymous function conversions 11.7.1 General <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
135<\/td>\n | 11.7.2 Evaluation of anonymous function conversions to delegate types <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
136<\/td>\n | 11.7.3 Evaluation of anonymous function conversions to expression tree types 11.8 Method group conversions <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
139<\/td>\n | 12. Expressions 12.1 General 12.2 Expression classifications 12.2.1 General <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
140<\/td>\n | 12.2.2 Values of expressions 12.3 Static and Dynamic Binding 12.3.1 General <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
141<\/td>\n | 12.3.2 Binding-time 12.3.3 Dynamic binding <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
142<\/td>\n | 12.3.4 Types of subexpressions 12.4 Operators 12.4.1 General 12.4.2 Operator precedence and associativity <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
143<\/td>\n | 12.4.3 Operator overloading <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
145<\/td>\n | 12.4.4 Unary operator overload resolution 12.4.5 Binary operator overload resolution 12.4.6 Candidate user-defined operators <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
146<\/td>\n | 12.4.7 Numeric promotions 12.4.7.1 General 12.4.7.2 Unary numeric promotions 12.4.7.3 Binary numeric promotions <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
147<\/td>\n | 12.4.8 Lifted operators <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
148<\/td>\n | 12.5 Member lookup 12.5.1 General <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
149<\/td>\n | 12.5.2 Base types <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
150<\/td>\n | 12.6 Function members 12.6.1 General <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
152<\/td>\n | 12.6.2 Argument lists 12.6.2.1 General <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
153<\/td>\n | 12.6.2.2 Corresponding parameters <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
154<\/td>\n | 12.6.2.3 Run-time evaluation of argument lists <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
155<\/td>\n | 12.6.3 Type inference 12.6.3.1 General <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
156<\/td>\n | 12.6.3.2 The first phase <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
157<\/td>\n | 12.6.3.3 The second phase 12.6.3.4 Input types 12.6.3.5 Output types 12.6.3.6 Dependence 12.6.3.7 Output type inferences <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
158<\/td>\n | 12.6.3.8 Explicit parameter type inferences 12.6.3.9 Exact inferences 12.6.3.10 Lower-bound inferences 12.6.3.11 Upper-bound inferences <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
159<\/td>\n | 12.6.3.12 Fixing 12.6.3.13 Inferred return type <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
161<\/td>\n | 12.6.3.14 Type inference for conversion of method groups 12.6.3.15 Finding the best common type of a set of expressions 12.6.4 Overload resolution 12.6.4.1 General <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
162<\/td>\n | 12.6.4.2 Applicable function member <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
163<\/td>\n | 12.6.4.3 Better function member <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
164<\/td>\n | 12.6.4.4 Better conversion from expression 12.6.4.5 Better conversion from type 12.6.4.6 Better conversion target 12.6.4.7 Overloading in generic classes <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
165<\/td>\n | 12.6.5 Compile-time checking of dynamic member invocation <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
166<\/td>\n | 12.6.6 Function member invocation 12.6.6.1 General <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
167<\/td>\n | 12.6.6.2 Invocations on boxed instances 12.7 Primary expressions 12.7.1 General <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
168<\/td>\n | 12.7.2 Literals 12.7.3 Simple names 12.7.3.1 General <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
170<\/td>\n | 12.7.3.2 Invariant meaning in blocks 12.7.4 Parenthesized expressions <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
171<\/td>\n | 12.7.5 Member access 12.7.5.1 General <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
173<\/td>\n | 12.7.5.2 Identical simple names and type names 12.7.6 Invocation expressions 12.7.6.1 General <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
174<\/td>\n | 12.7.6.2 Method invocations <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
175<\/td>\n | 12.7.6.3 Extension method invocations <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
177<\/td>\n | 12.7.6.4 Delegate invocations <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
178<\/td>\n | 12.7.7 Element access 12.7.7.1 General 12.7.7.2 Array access <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
179<\/td>\n | 12.7.7.3 Indexer access <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
180<\/td>\n | 12.7.8 This access 12.7.9 Base access <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
181<\/td>\n | 12.7.10 Postfix increment and decrement operators <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
182<\/td>\n | 12.7.11 The new operator 12.7.11.1 General 12.7.11.2 Object creation expressions <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
184<\/td>\n | 12.7.11.3 Object initializers <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
186<\/td>\n | 12.7.11.4 Collection initializers <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
187<\/td>\n | 12.7.11.5 Array creation expressions <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
189<\/td>\n | 12.7.11.6 Delegate creation expressions <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
190<\/td>\n | 12.7.11.7 Anonymous object creation expressions <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
192<\/td>\n | 12.7.12 The typeof operator <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
193<\/td>\n | 12.7.13 The sizeof operator <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
194<\/td>\n | 12.7.14 The checked and unchecked operators <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
196<\/td>\n | 12.7.15 Default value expressions <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
197<\/td>\n | 12.7.16 Anonymous method expressions 12.8 Unary operators 12.8.1 General 12.8.2 Unary plus operator 12.8.3 Unary minus operator <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
198<\/td>\n | 12.8.4 Logical negation operator 12.8.5 Bitwise complement operator <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
199<\/td>\n | 12.8.6 Prefix increment and decrement operators <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
200<\/td>\n | 12.8.7 Cast expressions 12.8.8 Await expressions 12.8.8.1 General <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
201<\/td>\n | 12.8.8.2 Awaitable expressions 12.8.8.3 Classification of await expressions 12.8.8.4 Run-time evaluation of await expressions <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
202<\/td>\n | 12.9 Arithmetic operators 12.9.1 General 12.9.2 Multiplication operator <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
203<\/td>\n | 12.9.3 Division operator <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
204<\/td>\n | 12.9.4 Remainder operator <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
205<\/td>\n | 12.9.5 Addition operator <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
207<\/td>\n | 12.9.6 Subtraction operator <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
209<\/td>\n | 12.10 Shift operators <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
210<\/td>\n | 12.11 Relational and type-testing operators 12.11.1 General <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
211<\/td>\n | 12.11.2 Integer comparison operators <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
212<\/td>\n | 12.11.3 Floating-point comparison operators 12.11.4 Decimal comparison operators <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
213<\/td>\n | 12.11.5 Boolean equality operators 12.11.6 Enumeration comparison operators 12.11.7 Reference type equality operators <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
215<\/td>\n | 12.11.8 String equality operators 12.11.9 Delegate equality operators <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
216<\/td>\n | 12.11.10 Equality operators between nullable value types and the null literal 12.11.11 The is operator <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
217<\/td>\n | 12.11.12 The as operator <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
218<\/td>\n | 12.12 Logical operators 12.12.1 General 12.12.2 Integer logical operators <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
219<\/td>\n | 12.12.3 Enumeration logical operators 12.12.4 Boolean logical operators 12.12.5 Nullable Boolean & and | operators <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
220<\/td>\n | 12.13 Conditional logical operators 12.13.1 General <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
221<\/td>\n | 12.13.2 Boolean conditional logical operators 12.13.3 User-defined conditional logical operators <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
222<\/td>\n | 12.14 The null coalescing operator 12.15 Conditional operator <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
223<\/td>\n | 12.16 Anonymous function expressions 12.16.1 General <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
225<\/td>\n | 12.16.2 Anonymous function signatures 12.16.3 Anonymous function bodies <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
226<\/td>\n | 12.16.4 Overload resolution <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
227<\/td>\n | 12.16.5 Anonymous functions and dynamic binding 12.16.6 Outer variables 12.16.6.1 General 12.16.6.2 Captured outer variables <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
228<\/td>\n | 12.16.6.3 Instantiation of local variables <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
230<\/td>\n | 12.16.7 Evaluation of anonymous function expressions 12.16.8 Implementation Exmple <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
233<\/td>\n | 12.17 Query expressions 12.17.1 General <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
234<\/td>\n | 12.17.2 Ambiguities in query expressions 12.17.3 Query expression translation 12.17.3.1 General <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
235<\/td>\n | 12.17.3.2 select and group \u2026 by clauses with continuations 12.17.3.3 Explicit range variable types <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
236<\/td>\n | 12.17.3.4 Degenerate query expressions 12.17.3.5 From, let, where, join and orderby clauses <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
240<\/td>\n | 12.17.3.6 Select clauses 12.17.3.7 Group clauses 12.17.3.8 Transparent identifiers <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
242<\/td>\n | 12.17.4 The query-expression pattern <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
243<\/td>\n | 12.18 Assignment operators 12.18.1 General <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
244<\/td>\n | 12.18.2 Simple assignment <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
246<\/td>\n | 12.18.3 Compound assignment <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
247<\/td>\n | 12.18.4 Event assignment 12.19 Expression 12.20 Constant expressions <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
249<\/td>\n | 12.21 Boolean expressions <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
251<\/td>\n | 13. Statements 13.1 General 13.2 End points and reachability <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
253<\/td>\n | 13.3 Blocks 13.3.1 General 13.3.2 Statement lists <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
254<\/td>\n | 13.4 The empty statement 13.5 Labeled statements <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
255<\/td>\n | 13.6 Declaration statements 13.6.1 General 13.6.2 Local variable declarations <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
257<\/td>\n | 13.6.3 Local constant declarations 13.7 Expression statements <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
258<\/td>\n | 13.8 Selection statements 13.8.1 General 13.8.2 The if statement 13.8.3 The switch statement <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
262<\/td>\n | 13.9 Iteration statements 13.9.1 General 13.9.2 The while statement <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
263<\/td>\n | 13.9.3 The do statement 13.9.4 The for statement <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
264<\/td>\n | 13.9.5 The foreach statement <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
267<\/td>\n | 13.10 Jump statements 13.10.1 General <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
268<\/td>\n | 13.10.2 The break statement <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
269<\/td>\n | 13.10.3 The continue statement 13.10.4 The goto statement <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
270<\/td>\n | 13.10.5 The return statement <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
271<\/td>\n | 13.10.6 The throw statement <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
272<\/td>\n | 13.11 The try statement <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
275<\/td>\n | 13.12 The checked and unchecked statements 13.13 The lock statement <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
276<\/td>\n | 13.14 The using statement <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
278<\/td>\n | 13.15 The yield statement <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
281<\/td>\n | 14. Namespaces 14.1 General 14.2 Compilation units 14.3 Namespace declarations <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
283<\/td>\n | 14.4 Extern alias directives 14.5 Using directives 14.5.1 General <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
284<\/td>\n | 14.5.2 Using alias directives <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
288<\/td>\n | 14.5.3 Using namespace directives <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
289<\/td>\n | 14.6 Namespace member declarations <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
290<\/td>\n | 14.7 Type declarations 14.8 Qualified alias member 14.8.1 General <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
292<\/td>\n | 14.8.2 Uniqueness of aliases <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
293<\/td>\n | 15. Classes 15.1 General 15.2 Class declarations 15.2.1 General 15.2.2 Class modifiers 15.2.2.1 General <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
294<\/td>\n | 15.2.2.2 Abstract classes 15.2.2.3 Sealed classes <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
295<\/td>\n | 15.2.2.4 Static classes 15.2.2.4.1 General 15.2.2.4.2 Referencing static class types <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
296<\/td>\n | 15.2.3 Type parameters 15.2.4 Class base specification 15.2.4.1 General 15.2.4.2 Base classes <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
298<\/td>\n | 15.2.4.3 Interface implementations <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
299<\/td>\n | 15.2.5 Type parameter constraints <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
304<\/td>\n | 15.2.6 Class body 15.2.7 Partial declarations <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
305<\/td>\n | 15.3 Class members 15.3.1 General <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
307<\/td>\n | 15.3.2 The instance type 15.3.3 Members of constructed types <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
308<\/td>\n | 15.3.4 Inheritance <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
309<\/td>\n | 15.3.5 The new modifier 15.3.6 Access modifiers <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
310<\/td>\n | 15.3.7 Constituent types 15.3.8 Static and instance members <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
311<\/td>\n | 15.3.9 Nested types 15.3.9.1 General 15.3.9.2 Fully qualified name 15.3.9.3 Declared accessibility <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
312<\/td>\n | 15.3.9.4 Hiding 15.3.9.5 this access <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
313<\/td>\n | 15.3.9.6 Access to private and protected members of the containing type <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
314<\/td>\n | 15.3.9.7 Nested types in generic classes <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
315<\/td>\n | 15.3.10 Reserved member names 15.3.10.1 General 15.3.10.2 Member names reserved for properties <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
316<\/td>\n | 15.3.10.3 Member names reserved for events 15.3.10.4 Member names reserved for indexers 15.3.10.5 Member names reserved for finalizers 15.4 Constants <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
318<\/td>\n | 15.5 Fields 15.5.1 General <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
319<\/td>\n | 15.5.2 Static and instance fields 15.5.3 Readonly fields 15.5.3.1 General <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
320<\/td>\n | 15.5.3.2 Using static readonly fields for constants 15.5.3.3 Versioning of constants and static readonly fields <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
321<\/td>\n | 15.5.4 Volatile fields <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
322<\/td>\n | 15.5.5 Field initialization 15.5.6 Variable initializers 15.5.6.1 General <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
323<\/td>\n | 15.5.6.2 Static field initialization <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
324<\/td>\n | 15.5.6.3 Instance field initialization <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
325<\/td>\n | 15.6 Methods 15.6.1 General <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
327<\/td>\n | 15.6.2 Method parameters 15.6.2.1 General <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
328<\/td>\n | 15.6.2.2 Value parameters <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
329<\/td>\n | 15.6.2.3 Reference parameters 15.6.2.4 Output parameters <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
330<\/td>\n | 15.6.2.5 Parameter arrays <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
333<\/td>\n | 15.6.3 Static and instance methods 15.6.4 Virtual methods <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
335<\/td>\n | 15.6.5 Override methods <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
337<\/td>\n | 15.6.6 Sealed methods <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
338<\/td>\n | 15.6.7 Abstract methods <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
339<\/td>\n | 15.6.8 External methods 15.6.9 Partial methods <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
342<\/td>\n | 15.6.10 Extension methods <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
343<\/td>\n | 15.6.11 Method body 15.7 Properties 15.7.1 General <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
345<\/td>\n | 15.7.2 Static and instance properties 15.7.3 Accessors <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
350<\/td>\n | 15.7.4 Automatically implemented properties 15.7.5 Accessibility <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
352<\/td>\n | 15.7.6 Virtual, sealed, override, and abstract accessors <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
353<\/td>\n | 15.8 Events 15.8.1 General <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
355<\/td>\n | 15.8.2 Field-like events <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
356<\/td>\n | 15.8.3 Event accessors <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
357<\/td>\n | 15.8.4 Static and instance events <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
358<\/td>\n | 15.8.5 Virtual, sealed, override, and abstract accessors 15.9 Indexers <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
362<\/td>\n | 15.10 Operators 15.10.1 General <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
363<\/td>\n | 15.10.2 Unary operators <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
364<\/td>\n | 15.10.3 Binary operators 15.10.4 Conversion operators <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
367<\/td>\n | 15.11 Instance constructors 15.11.1 General <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
368<\/td>\n | 15.11.2 Constructor initializers 15.11.3 Instance variable initializers <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
369<\/td>\n | 15.11.4 Constructor execution <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
370<\/td>\n | 15.11.5 Default constructors <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
371<\/td>\n | 15.12 Static constructors <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
373<\/td>\n | 15.13 Finalizers <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
375<\/td>\n | 15.14 Iterators 15.14.1 General 15.14.2 Enumerator interfaces 15.14.3 Enumerable interfaces 15.14.4 Yield type 15.14.5 Enumerator objects 15.14.5.1 General <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
376<\/td>\n | 15.14.5.2 The MoveNext method <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
377<\/td>\n | 15.14.5.3 The Current property 15.14.5.4 The Dispose method <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
378<\/td>\n | 15.14.6 Enumerable objects 15.14.6.1 General 15.14.6.2 The GetEnumerator method 15.15 Async Functions 15.15.1 General <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
379<\/td>\n | 15.15.2 Evaluation of a task-returning async function 15.15.3 Evaluation of a void-returning async function <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
381<\/td>\n | 16. Structs 16.1 General 16.2 Struct declarations 16.2.1 General 16.2.2 Struct modifiers <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
382<\/td>\n | 16.2.3 Partial modifier 16.2.4 Struct interfaces 16.2.5 Struct body 16.3 Struct members 16.4 Class and struct differences 16.4.1 General <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
383<\/td>\n | 16.4.2 Value semantics <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
384<\/td>\n | 16.4.3 Inheritance 16.4.4 Assignment 16.4.5 Default values <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
385<\/td>\n | 16.4.6 Boxing and unboxing 16.4.7 Meaning of this <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
386<\/td>\n | 16.4.8 Field initializers <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
387<\/td>\n | 16.4.9 Constructors <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
388<\/td>\n | 16.4.10 Static constructors 16.4.11 Automatically implemented properties <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
389<\/td>\n | 17. Arrays 17.1 General 17.2 Array types 17.2.1 General 17.2.2 The System.Array type <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
390<\/td>\n | 17.2.3 Arrays and the generic collection interfaces <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
391<\/td>\n | 17.3 Array creation 17.4 Array element access 17.5 Array members 17.6 Array covariance <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
392<\/td>\n | 17.7 Array initializers <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
395<\/td>\n | 18. Interfaces 18.1 General 18.2 Interface declarations 18.2.1 General 18.2.2 Interface modifiers <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
396<\/td>\n | 18.2.3 Variant type parameter lists 18.2.3.1 General 18.2.3.2 Variance safety <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
397<\/td>\n | 18.2.3.3 Variance conversion 18.2.4 Base interfaces <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
398<\/td>\n | 18.3 Interface body 18.4 Interface members 18.4.1 General <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
399<\/td>\n | 18.4.2 Interface methods <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
400<\/td>\n | 18.4.3 Interface properties 18.4.4 Interface events 18.4.5 Interface indexers <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
401<\/td>\n | 18.4.6 Interface member access <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
402<\/td>\n | 18.5 Qualified interface member names <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
403<\/td>\n | 18.6 Interface implementations 18.6.1 General <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
404<\/td>\n | 18.6.2 Explicit interface member implementations <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
406<\/td>\n | 18.6.3 Uniqueness of implemented interfaces <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
407<\/td>\n | 18.6.4 Implementation of generic methods <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
408<\/td>\n | 18.6.5 Interface mapping <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
411<\/td>\n | 18.6.6 Interface implementation inheritance <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
412<\/td>\n | 18.6.7 Interface re-implementation <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
413<\/td>\n | 18.6.8 Abstract classes and interfaces <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
415<\/td>\n | 19. Enums 19.1 General 19.2 Enum declarations 19.3 Enum modifiers <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
416<\/td>\n | 19.4 Enum members <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
418<\/td>\n | 19.5 The System.Enum type 19.6 Enum values and operations <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
419<\/td>\n | 20. Delegates 20.1 General 20.2 Delegate declarations <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
420<\/td>\n | 20.3 Delegate members 20.4 Delegate compatibility <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
422<\/td>\n | 20.5 Delegate instantiation <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
423<\/td>\n | 20.6 Delegate invocation <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
427<\/td>\n | 21. Exceptions 21.1 General 21.2 Causes of exceptions 21.3 The System.Exception class 21.4 How exceptions are handled <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
428<\/td>\n | 21.5 Common exception classes <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
429<\/td>\n | 22. Attributes 22.1 General 22.2 Attribute classes 22.2.1 General 22.2.2 Attribute usage <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
431<\/td>\n | 22.2.3 Positional and named parameters 22.2.4 Attribute parameter types <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
432<\/td>\n | 22.3 Attribute specification <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
438<\/td>\n | 22.4 Attribute instances 22.4.1 General 22.4.2 Compilation of an attribute 22.4.3 Run-time retrieval of an attribute instance <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
439<\/td>\n | 22.5 Reserved attributes 22.5.1 General 22.5.2 The AttributeUsage attribute <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
440<\/td>\n | 22.5.3 The Conditional attribute 22.5.3.1 General 22.5.3.2 Conditional methods <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
442<\/td>\n | 22.5.3.3 Conditional attribute classes <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
443<\/td>\n | 22.5.4 The Obsolete attribute <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
444<\/td>\n | 22.5.5 Caller-info attributes 22.5.5.1 General <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
445<\/td>\n | 22.5.5.2 The CallerLineNumber attribute 22.5.5.3 The CallerFilePath attribute 22.5.5.4 The CallerMemberName attribute <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
446<\/td>\n | 22.6 Attributes for interoperation <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
447<\/td>\n | 23. Unsafe code 23.1 General 23.2 Unsafe contexts <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
450<\/td>\n | 23.3 Pointer types <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
452<\/td>\n | 23.4 Fixed and moveable variables <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
453<\/td>\n | 23.5 Pointer conversions 23.5.1 General <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
454<\/td>\n | 23.5.2 Pointer arrays <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
455<\/td>\n | 23.6 Pointers in expressions 23.6.1 General 23.6.2 Pointer indirection <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
456<\/td>\n | 23.6.3 Pointer member access <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
457<\/td>\n | 23.6.4 Pointer element access 23.6.5 The address-of operator <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
458<\/td>\n | 23.6.6 Pointer increment and decrement <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
459<\/td>\n | 23.6.7 Pointer arithmetic 23.6.8 Pointer comparison <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
460<\/td>\n | 23.6.9 The sizeof operator 23.7 The fixed statement <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
463<\/td>\n | 23.8 Fixed-size buffers 23.8.1 General 23.8.2 Fixed-size buffer declarations <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
464<\/td>\n | 23.8.3 Fixed-size buffers in expressions <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
465<\/td>\n | 23.8.4 Definite assignment checking 23.9 Stack allocation <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
467<\/td>\n | Annex A. Grammar A.1 General A.2 Lexical grammar <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
468<\/td>\n | A.2.1 Comments A.2.2 Tokens <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
470<\/td>\n | A.2.3 Keywords <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
472<\/td>\n | A.2.4 Operators and punctuators A.2.5 Pre-processing directives <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
474<\/td>\n | A.3 Syntactic grammar A.3.1 Basic concepts A.3.2 Types <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
475<\/td>\n | A.3.3 Variables <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
476<\/td>\n | A.3.4 Expressions <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
482<\/td>\n | A.3.5 Statements <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
485<\/td>\n | A.3.6 Namespaces <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
486<\/td>\n | A.3.7 Classes <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
493<\/td>\n | A.3.8 Structs A.3.9 Arrays A.3.10 Interfaces <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
494<\/td>\n | A.3.11 Enums <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
495<\/td>\n | A.3.12 Delegates A.3.13 Attributes <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
496<\/td>\n | A.4 Grammar extensions for unsafe code <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
501<\/td>\n | Annex B. Portability issues B.1 General B.2 Undefined behavior B.3 Implementation-defined behavior <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
502<\/td>\n | B.4 Unspecified behavior B.5 Other Issues <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
503<\/td>\n | Annex C. Standard library C.1 General C.2 Standard Library Types defined in ISO\/IEC 23271 <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
512<\/td>\n | C.3 Standard Library Types not defined in ISO\/IEC 23271:2012 <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
515<\/td>\n | Annex D. Documentation comments D.1 General D.2 Introduction <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
516<\/td>\n | D.3 Recommended tags D.3.1 General <\/td>\n<\/tr>\n | ||||||||||||||||||||||||||||||
517<\/td>\n | D.3.2 D.3.3 <\/td>\n<\/tr>\n |