ImageVerifierCode 换一换
格式:PDF , 页数:486 ,大小:2.63MB ,
资源ID:436357      下载积分:10000 积分
快捷下载
登录下载
邮箱/手机:
温馨提示:
如需开发票,请勿充值!快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝扫码支付 微信扫码支付   
注意:如需开发票,请勿充值!
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【http://www.mydoc123.com/d-436357.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(ANSI INCITS ISO IEC 23270-2003 Information technology C Sharp Language Specification (Adopted by INCITS).pdf)为本站会员(eventdump275)主动上传,麦多课文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知麦多课文库(发送邮件至master@mydoc123.com或直接QQ联系客服),我们立即给予删除!

ANSI INCITS ISO IEC 23270-2003 Information technology C Sharp Language Specification (Adopted by INCITS).pdf

1、Adopted by INCITS (InterNational Committee for Information Technology Standards) as an American National Standard.Date of ANSI Approval: 12/24/2003Published by American National Standards Institute,25 West 43rd Street, New York, New York 10036Copyright 2003 by Information Technology Industry Council

2、 (ITI).All rights reserved.These materials are subject to copyright claims of International Standardization Organization (ISO), InternationalElectrotechnical Commission (IEC), American National Standards Institute (ANSI), and Information Technology Industry Council(ITI). Not for resale. No part of t

3、his publication may be reproduced in any form, including an electronic retrieval system, withoutthe prior written permission of ITI. All requests pertaining to this standard should be submitted to ITI, 1250 Eye Street NW,Washington, DC 20005.Printed in the United States of AmericaReference numberISO

4、/IEC 23270:2003(E)ISO/IEC 2003INTERNATIONAL STANDARD ISO/IEC23270First edition2003-04-01Information technology C# Language Specification Technologies de linformation Spcification du langage C# ISO/IEC 23270:2003(E) PDF disclaimer This PDF file may contain embedded typefaces. In accordance with Adobe

5、s licensing policy, this file may be printed or viewed but shall not be edited unless the typefaces which are embedded are licensed to and installed on the computer performing the editing. In downloading this file, parties accept therein the responsibility of not infringing Adobes licensing policy.

6、The ISO Central Secretariat accepts no liability in this area. Adobe is a trademark of Adobe Systems Incorporated. Details of the software products used to create this PDF file can be found in the General Info relative to the file; the PDF-creation parameters were optimized for printing. Every care

7、has been taken to ensure that the file is suitable for use by ISO member bodies. In the unlikely event that a problem relating to it is found, please inform the Central Secretariat at the address given below. ISO/IEC 2003 All rights reserved. Unless otherwise specified, no part of this publication m

8、ay be reproduced or utilized in any form or by any means, electronic or mechanical, including photocopying and microfilm, without permission in writing from either ISO at the address below or ISOs member body in the country of the requester. ISO copyright office Case postale 56 CH-1211 Geneva 20 Tel

9、. + 41 22 749 01 11 Fax + 41 22 749 09 47 E-mail copyrightiso.org Web www.iso.org Published in Switzerland ii ISO/IEC 2003 All rights reservedISO/IEC 23270:2003(E) ISO/IEC 2003 All rights reserved iii Table of Contents 1. Scope. 1 2. Conformance . 3 3. References 5 4. Definitions 7 5. Notational con

10、ventions 9 6. Acronyms and abbreviations . 11 7. General description. 13 8. Language Overview 15 8.1 Getting started . 15 8.2 Types . 16 8.2.1 Predefined types17 8.2.2 Conversions 19 8.2.3 Array types20 8.2.4 Type system unification21 8.3 Variables and parameters. 22 8.4 Automatic memory management.

11、 25 8.5 Expressions 27 8.6 Statements 28 8.7 Classes . 31 8.7.1 Constants.32 8.7.2 Fields.33 8.7.3 Methods 34 8.7.4 Properties 35 8.7.5 Events36 8.7.6 Operators.37 8.7.7 Indexers.38 8.7.8 Instance constructors.39 8.7.9 Destructors 39 8.7.10 Static constructors.40 8.7.11 Inheritance 40 8.8 Structs 41

12、 8.9 Interfaces . 42 8.10 Delegates . 43 8.11 Enums 44 8.12 Namespaces and assemblies 45 8.13 Versioning . 46 8.14 Attributes . 48 9. Lexical structure 51 9.1 Programs 51 9.2 Grammars 51 9.2.1 Lexical grammar .51 9.2.2 Syntactic grammar 51 9.3 Lexical analysis . 52 9.3.1 Line terminators52 9.3.2 Com

13、ments .53 ISO/IEC 23270:2003(E) iv ISO/IEC 2003 All rights reserved 9.3.3 White space.54 9.4 Tokens . 54 9.4.1 Unicode escape sequences 54 9.4.2 Identifiers55 9.4.3 Keywords56 9.4.4 Literals 57 9.4.5 Operators and punctuators 62 9.5 Pre-processing directives. 62 9.5.1 Conditional compilation symbols

14、 .63 9.5.2 Pre-processing expressions .63 9.5.3 Declaration directives .64 9.5.4 Conditional compilation directives .65 9.5.5 Diagnostic directives.67 9.5.6 Region control.67 9.5.7 Line directives.68 10. Basic concepts 69 10.1 Application startup 69 10.2 Application termination. 69 10.3 Declarations

15、. 70 10.4 Members 72 10.4.1 Namespace members 72 10.4.2 Struct members .72 10.4.3 Enumeration members 73 10.4.4 Class members 73 10.4.5 Interface members.73 10.4.6 Array members .73 10.4.7 Delegate members.73 10.5 Member access 73 10.5.1 Declared accessibility .74 10.5.2 Accessibility domains .74 10

16、.5.3 Protected access for instance members.77 10.5.4 Accessibility constraints .77 10.6 Signatures and overloading . 78 10.7 Scopes 79 10.7.1 Name hiding81 10.8 Namespace and type names. 83 10.8.1 Fully qualified names84 10.9 Automatic memory management. 85 10.10 Execution order . 87 11. Types 89 11

17、.1 Value types 89 11.1.1 Default constructors90 11.1.2 Struct types .90 11.1.3 Simple types91 11.1.4 Integral types.91 11.1.5 Floating point types.92 11.1.6 The decimal type.94 11.1.7 The bool type94 11.1.8 Enumeration types 94 11.2 Reference types . 94 11.2.1 Class types 95 11.2.2 The object type.9

18、5 11.2.3 The string type.95 ISO/IEC 23270:2003(E) ISO/IEC 2003 All rights reserved v 11.2.4 Interface types.96 11.2.5 Array types96 11.2.6 Delegate types.96 11.3 Boxing and unboxing 96 11.3.1 Boxing conversions.96 11.3.2 Unboxing conversions 97 12. Variables 99 12.1 Variable categories 99 12.1.1 Sta

19、tic variables99 12.1.2 Instance variables99 12.1.3 Array elements100 12.1.4 Value parameters 100 12.1.5 Reference parameters100 12.1.6 Output parameters.100 12.1.7 Local variables101 12.2 Default values 101 12.3 Definite assignment . 102 12.3.1 Initially assigned variables102 12.3.2 Initially unassi

20、gned variables103 12.3.3 Precise rules for determining definite assignment 103 12.4 Variable references 112 12.5 Atomicity of variable references . 112 13. Conversions 113 13.1 Implicit conversions 113 13.1.1 Identity conversion .113 13.1.2 Implicit numeric conversions113 13.1.3 Implicit enumeration

21、 conversions.114 13.1.4 Implicit reference conversions114 13.1.5 Boxing conversions.114 13.1.6 Implicit constant expression conversions .114 13.1.7 User-defined implicit conversions 115 13.2 Explicit conversions 115 13.2.1 Explicit numeric conversions115 13.2.2 Explicit enumeration conversions.117 1

22、3.2.3 Explicit reference conversions117 13.2.4 Unboxing conversions 117 13.2.5 User-defined explicit conversions.118 13.3 Standard conversions. 118 13.3.1 Standard implicit conversions.118 13.3.2 Standard explicit conversions .118 13.4 User-defined conversions 118 13.4.1 Permitted user-defined conve

23、rsions118 13.4.2 Evaluation of user-defined conversions119 13.4.3 User-defined implicit conversions 119 13.4.4 User-defined explicit conversions.120 14. Expressions 123 14.1 Expression classifications 123 14.1.1 Values of expressions .124 14.2 Operators . 124 14.2.1 Operator precedence and associati

24、vity124 14.2.2 Operator overloading 125 14.2.3 Unary operator overload resolution 126 14.2.4 Binary operator overload resolution .127 ISO/IEC 23270:2003(E) vi ISO/IEC 2003 All rights reserved 14.2.5 Candidate user-defined operators .127 14.2.6 Numeric promotions .127 14.3 Member lookup . 129 14.3.1

25、Base types .129 14.4 Function members . 130 14.4.1 Argument lists.132 14.4.2 Overload resolution.134 14.4.3 Function member invocation 136 14.5 Primary expressions. 137 14.5.1 Literals 138 14.5.2 Simple names138 14.5.3 Parenthesized expressions.139 14.5.4 Member access140 14.5.5 Invocation expressio

26、ns141 14.5.6 Element access143 14.5.7 This access 144 14.5.8 Base access .145 14.5.9 Postfix increment and decrement operators145 14.5.10 The new operator146 14.5.11 The typeof operator.150 14.5.12 The checked and unchecked operators .151 14.6 Unary expressions . 153 14.6.1 Unary plus operator.153 1

27、4.6.2 Unary minus operator .154 14.6.3 Logical negation operator .154 14.6.4 Bitwise complement operator .154 14.6.5 Prefix increment and decrement operators155 14.6.6 Cast expressions155 14.7 Arithmetic operators 156 14.7.1 Multiplication operator .156 14.7.2 Division operator 157 14.7.3 Remainder

28、operator.158 14.7.4 Addition operator159 14.7.5 Subtraction operator161 14.8 Shift operators . 162 14.9 Relational and type-testing operators 163 14.9.1 Integer comparison operators164 14.9.2 Floating-point comparison operators 165 14.9.3 Decimal comparison operators .165 14.9.4 Boolean equality ope

29、rators .165 14.9.5 Enumeration comparison operators 166 14.9.6 Reference type equality operators.166 14.9.7 String equality operators.167 14.9.8 Delegate equality operators.167 14.9.9 The is operator 168 14.9.10 The as operator 168 14.10 Logical operators . 169 14.10.1 Integer logical operators .169

30、 14.10.2 Enumeration logical operators 169 14.10.3 Boolean logical operators .170 14.11 Conditional logical operators. 170 14.11.1 Boolean conditional logical operators.170 14.11.2 User-defined conditional logical operators.171 14.12 Conditional operator 171 14.13 Assignment operators 172 ISO/IEC 23

31、270:2003(E) ISO/IEC 2003 All rights reserved vii 14.13.1 Simple assignment 172 14.13.2 Compound assignment174 14.13.3 Event assignment 175 14.14 Expression . 175 14.15 Constant expressions . 175 14.16 Boolean expressions 176 15. Statements 177 15.1 End points and reachability . 177 15.2 Blocks 179 1

32、5.2.1 Statement lists .179 15.3 The empty statement 179 15.4 Labeled statements 180 15.5 Declaration statements. 180 15.5.1 Local variable declarations .180 15.5.2 Local constant declarations.181 15.6 Expression statements . 182 15.7 Selection statements 182 15.7.1 The if statement 182 15.7.2 The sw

33、itch statement.183 15.8 Iteration statements 186 15.8.1 The while statement.186 15.8.2 The do statement 187 15.8.3 The for statement187 15.8.4 The foreach statement 188 15.9 Jump statements. 190 15.9.1 The break statement.191 15.9.2 The continue statement192 15.9.3 The goto statement .192 15.9.4 The

34、 return statement.193 15.9.5 The throw statement.194 15.10 The try statement 195 15.11 The checked and unchecked statements 197 15.12 The lock statement 198 15.13 The using statement 198 16. Namespaces 201 16.1 Compilation units 201 16.2 Namespace declarations 201 16.3 Using directives . 202 16.3.1

35、Using alias directives 203 16.3.2 Using namespace directives205 16.4 Namespace members . 207 16.5 Type declarations. 207 17. Classes 209 17.1 Class declarations 209 17.1.1 Class modifiers .209 17.1.2 Class base specification 210 17.1.3 Class body.211 17.2 Class members. 212 17.2.1 Inheritance 213 17

36、.2.2 The new modifier .213 17.2.3 Access modifiers.213 17.2.4 Constituent types.214 17.2.5 Static and instance members.214 ISO/IEC 23270:2003(E) viii ISO/IEC 2003 All rights reserved 17.2.6 Nested types215 17.2.7 Reserved member names 217 17.3 Constants . 219 17.4 Fields . 220 17.4.1 Static and inst

37、ance fields.221 17.4.2 Readonly fields .222 17.4.3 Volatile fields223 17.4.4 Field initialization .224 17.4.5 Variable initializers.224 17.5 Methods . 227 17.5.1 Method parameters .228 17.5.2 Static and instance methods 233 17.5.3 Virtual methods.233 17.5.4 Override methods235 17.5.5 Sealed methods

38、.236 17.5.6 Abstract methods 237 17.5.7 External methods 238 17.5.8 Method body .239 17.5.9 Method overloading239 17.6 Properties. 239 17.6.1 Static and instance properties240 17.6.2 Accessors 240 17.6.3 Virtual, sealed, override, and abstract accessors.245 17.7 Events 246 17.7.1 Field-like events24

39、8 17.7.2 Event accessors .249 17.7.3 Static and instance events .250 17.7.4 Virtual, sealed, override, and abstract accessors.250 17.8 Indexers . 251 17.8.1 Indexer overloading 254 17.9 Operators . 254 17.9.1 Unary operators.255 17.9.2 Binary operators256 17.9.3 Conversion operators 256 17.10 Instan

40、ce constructors . 258 17.10.1 Constructor initializers259 17.10.2 Instance variable initializers .259 17.10.3 Constructor execution .259 17.10.4 Default constructors261 17.10.5 Private constructors.262 17.10.6 Optional instance constructor parameters .262 17.11 Static constructors . 262 17.12 Destru

41、ctors. 264 18. Structs 267 18.1 Struct declarations . 267 18.1.1 Struct modifiers.267 18.1.2 Struct interfaces 267 18.1.3 Struct body268 18.2 Struct members 268 18.3 Class and struct differences . 268 18.3.1 Value semantics 268 18.3.2 Inheritance 269 18.3.3 Assignment .269 18.3.4 Default values .269

42、 ISO/IEC 23270:2003(E) ISO/IEC 2003 All rights reserved ix 18.3.5 Boxing and unboxing270 18.3.6 Meaning of this.270 18.3.7 Field initializers 270 18.3.8 Constructors 270 18.3.9 Destructors 271 18.3.10 Static constructors.271 18.4 Struct examples . 271 18.4.1 Database integer type272 18.4.2 Database

43、boolean type 273 19. Arrays. 275 19.1 Array types 275 19.1.1 The System.Array type.276 19.2 Array creation 276 19.3 Array element access. 276 19.4 Array members 276 19.5 Array covariance . 276 19.6 Array initializers 277 20. Interfaces 279 20.1 Interface declarations. 279 20.1.1 Interface modifiers2

44、79 20.1.2 Base interfaces 279 20.1.3 Interface body .280 20.2 Interface members . 280 20.2.1 Interface methods281 20.2.2 Interface properties .281 20.2.3 Interface events .282 20.2.4 Interface indexers282 20.2.5 Interface member access.282 20.3 Fully qualified interface member names . 283 20.4 Inter

45、face implementations . 284 20.4.1 Explicit interface member implementations .285 20.4.2 Interface mapping .286 20.4.3 Interface implementation inheritance289 20.4.4 Interface re-implementation290 20.4.5 Abstract classes and interfaces291 21. Enums. 293 21.1 Enum declarations . 293 21.2 Enum modifier

46、s . 293 21.3 Enum members 294 21.4 Enum values and operations 296 22. Delegates. 297 22.1 Delegate declarations. 297 22.2 Delegate instantiation 299 22.3 Delegate invocation . 299 23. Exceptions 303 23.1 Causes of exceptions . 303 23.2 The System.Exception class. 303 23.3 How exceptions are handled

47、303 23.4 Common Exception Classes 304 24. Attributes . 305 ISO/IEC 23270:2003(E) x ISO/IEC 2003 All rights reserved 24.1 Attribute classes. 305 24.1.1 Attribute usage305 24.1.2 Positional and named parameters306 24.1.3 Attribute parameter types307 24.2 Attribute specification . 307 24.3 Attribute in

48、stances . 311 24.3.1 Compilation of an attribute .311 24.3.2 Run-time retrieval of an attribute instance311 24.4 Reserved attributes 312 24.4.1 The AttributeUsage attribute .312 24.4.2 The Conditional attribute.312 24.4.3 The Obsolete attribute314 25. Unsafe code 317 25.1 Unsafe contexts . 317 25.2

49、Pointer types 319 25.3 Fixed and moveable variables . 322 25.4 Pointer conversions . 322 25.5 Pointers in expressions 323 25.5.1 Pointer indirection.324 25.5.2 Pointer member access324 25.5.3 Pointer element access 325 25.5.4 The address-of operator 325 25.5.5 Pointer increment and decrement326 25.5.6 Pointer arithmetic326 25.5.7 Pointer comparison .327 25.5.8 The sizeof operator.327 25.6 The fixed statement 328 25.7 Stack allocation . 331 25.8 Dynamic memory allocation . 332 A. Grammar. 335 A.1 Lexical grammar. 335 A.1.1 Line terminators .335 A.

copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1