ylbtech-Docs-.NET-C#-指南-语言参考-预处理器指令:#pragma checksum(C# 参考) 1.返回顶部 1. #pragma checksum(C# 参考) 2015/07/20 生成源文件的校验和以帮助调试 ASP.NET 页面. 语法 C#复制 #pragma checksum "filename" "{guid}" "checksum bytes" 参数 "filename"需要监视更改或更…
ylbtech-Docs-.NET-C#-指南-语言参考-预处理器指令:#pragma warning(C# 参考) 1.返回顶部 1. #pragma warning(C# 参考) 2015/07/20 #pragma warning 可以启用或禁用特定警告. 语法 C#复制 #pragma warning disable warning-list #pragma warning restore warning-list 参数 warning-list以逗号分隔的警告编号的列表. “CS”前缀…
ylbtech-Docs-.NET-C#-指南-语言参考-预处理器指令:#pragma(C# 参考) 1.返回顶部 1. #pragma(C# 参考) 2015/07/20 #pragma 为编译器给出特殊指令以编译它所在的文件. 这些指令必须受编译器支持. 即是说,不可使用 #pragma 创建自定义处理指令. Microsoft C# 编译器支持以下两种 #pragma 指令: #pragma warning #pragma checksum 语法 C#复制 #pragma pragma-n…
ylbtech-Docs-.NET-C#-指南-语言参考-预处理器指令:#endregion(C# 参考) 1.返回顶部 1. #endregion(C# 参考) 2015/07/20 #endregion 标记 #region 块的结尾. 例如: C#复制 #region MyClass definition class MyClass { static void Main() { } } #endregion 请参阅 C# 参考 C# 编程指南 C# 预处理器指令 2. 2.返回顶部   3…
ylbtech-Docs-.NET-C#-指南-语言参考-预处理器指令:#region(C# 参考) 1.返回顶部 1. #region(C# 参考) 2015/07/20 利用 #region,可以指定在使用 Visual Studio Code 编辑器的大纲功能时可展开或折叠的代码块. 在较长的代码文件中,能够折叠或隐藏一个或多个区域会十分便利,这样,可将精力集中于当前处理的文件部分. 下面的示例演示如何定义区域: C#复制 #region MyClass definition public…
ylbtech-Docs-.NET-C#-指南-语言参考-预处理器指令:#line(C# 参考) 1.返回顶部 1. #line(C# 参考) 2015/07/20 借助 #line,可修改编译器的行号及(可选)用于错误和警告的文件名输出. 以下示例演示如何报告与行号相关联的两个警告. #line 200 指令将下一行的行号强制设为 200(尽管默认值为 #6):在执行下一个 #line 指令前,文件名都会报告为“特殊”. #line default 指令将行号恢复至默认行号,这会对上一指令重新…
ylbtech-Docs-.NET-C#-指南-语言参考-预处理器指令:#error(C# 参考) 1.返回顶部 1. #error(C# 参考) 2015/07/20 #error 可从代码中的特定位置生成 CS1029 用户定义的错误. 例如: C#复制 #error Deprecated code in this method. 备注 #error 常用于条件指令中. 还可使用 #warning 生成用户定义警告. 示例 C#复制 // preprocessor_error.cs // C…
ylbtech-Docs-.NET-C#-指南-语言参考-预处理器指令:#warning(C# 参考) 1.返回顶部 1. #warning(C# 参考) 2015/07/20 #warning 允许你从代码中的特定位置生成 CS1030 第一级编译器警告. 例如: C#复制 #warning Deprecated code in this method. 备注 #warning 常用于条件指令中. 还可使用 #error 生成用户定义错误. 示例 C#复制 // preprocessor_wa…
ylbtech-Docs-.NET-C#-指南-语言参考-预处理器指令:#undef(C# 参考) 1.返回顶部 1. #undef(C# 参考) 2018/06/30 #undef 允许你定义一个符号,这样一来,通过将该符号用作 #if 指令中的表达式,表达式将计算为 false. 可使用 #define 指令或 -define 编译器选项来定义符号. 文件中必须先出现 #undef 指令,才能使用任何非指令的语句. 示例 C#复制 // preprocessor_undef.cs // co…
ylbtech-Docs-.NET-C#-指南-语言参考-预处理器指令:#define(C# 参考) 1.返回顶部 1. #define(C# 参考) 2018/06/30 使用 #define 来定义符号. 将符号用作传递给 #if 指令的表达式时,该表达式的计算结果为 true,如以下示例所示: C#复制 #define DEBUG 备注 备注 #define 指令不能用于声明常量值,这与 C 和 C++ 中的通常做法一样. C# 中的常量最好定义为类或结构的静态成员. 如果具有多个此类常量…
ylbtech-Docs-.NET-C#-指南-语言参考-预处理器指令:#endif(C# 参考) 1.返回顶部 1. #endif(C# 参考) 2015/07/20 #endif 指定条件指令的末尾,以 #if 指令开头. 例如,应用于对象的 C#复制 #define DEBUG // ... #if DEBUG Console.WriteLine("Debug version"); #endif 备注 以 #if 指令开头的条件指令必须以 #endif 指令显式终止. 有关如何使…
ylbtech-Docs-.NET-C#-指南-语言参考-预处理器指令:#elif(C# 参考) 1.返回顶部 1. #elif(C# 参考) 2015/07/20 #elif 可以创建复合条件指令. 如果之前的 #if 和任何之前的可选 #elif 指令表达式的值为 true,则计算 #elif 表达式. 如果 #elif 表达式计算结果为 true,编译器将计算 #elif 和下一条件指令间的所有代码. 例如: C#复制 #define VC7 //... #if debug Console…
ylbtech-Docs-.NET-C#-指南-语言参考-预处理器指令:#else(C# 参考) 1.返回顶部 1. #else(C# 参考) 2015/07/20 #else 允许创建复合条件指令,因此,如果先前 #if 或(可选)#elif 指令中的任何表达式的计算结果都不是 true,则编译器将对介于 #else 和后续 #endif 之间的所有代码进行求值. 备注 #endif 必须是 #else 之后的下一个预处理器指令. 有关如何使用 #else 的示例,请参阅 #if. 请参阅 C…
ylbtech-Docs-.NET-C#-指南-语言参考-预处理器指令:#if 预处理指令 1.返回顶部 1. #if(C# 参考) 2018/06/30 如果 C# 编译器遇到 #if 指令,最终是 #endif 指令,则仅当定义指定的符号时,它才编译这些指令之间的代码. 与 C 和 C++ 不同,你不能为符号分配数字值. C# 中的 #if 语句是布尔值,且仅测试是否已定义该符号. 例如: C#复制 #if DEBUG Console.WriteLine("Debug version&quo…
ylbtech-Docs-.NET-C#-指南-语言参考-预处理器指令:C# 预处理器指令 1.返回顶部 1. C# 预处理器指令 2015/07/20 本节介绍了以下 C# 预处理器指令: #if #else #elif #endif #define #undef #warning #error #line #region #endregion #pragma #pragma warning #pragma checksum 请参阅各个主题了解更多信息和示例. 尽管编译器没有单独的预处理器,但…
ylbtech-Docs-.NET-C#-指南-语言参考-关键字-值类型:可以 null 的值类型 1.返回顶部 1. Nullable value types (C# reference) 2019/11/04 7 分钟阅读时长 A nullable value type T? represents all values of its underlying value type T and an additional null value. For example, you can assig…
ylbtech-Docs-.NET-C#-指南-语言参考-关键字-值类型:struct 1.返回顶部 1. struct(C# 参考) 2015/07/20 struct 类型是一种值类型,通常用来封装小型相关变量组,例如,矩形的坐标或库存商品的特征. 下面的示例显示了一个简单的结构声明: C#复制 public struct Book { public decimal price; public string title; public string author; } 备注 结构还可以包含构…
ylbtech-Docs-.NET-C#-指南-语言参考-关键字-值类型:enum 1.返回顶部 1. enum(C# 参考) 2015/07/20 enum 关键字用于声明枚举,一种包含一组被称为枚举数列表的已命名常数的不同类型. 通常最好是直接在命名空间内定义枚举,以便命名空间中的所有类都可以同样方便地访问它. 但是,也可能会在类或结构中嵌套枚举. 默认情况下,第一个枚举数具有值 0,并且每个连续枚举数的值将增加 1. 例如,在以下枚举中, Sat 的值为 0, Sun 的值为 1, Mon…
ylbtech-Docs-.NET-C#-指南-语言参考-关键字-值类型:char 1.返回顶部 1. char(C# 参考) 2019/10/22 char 类型关键字是 .NET System.Char 结构类型的别名,它表示 Unicode UTF-16 字符: 类型 范围 大小 .NET 类型 char U+0000 到 U+FFFF 16 位 System.Char 文本 char 类型的常量可以编写为字符文本.十六进制转义序列或 Unicode 表示形式. 也可以将整型字符代码强制转…
ylbtech-Docs-.NET-C#-指南-语言参考-关键字-值类型:bool 1.返回顶部 1. bool(C# 参考) 2015/07/20 bool 关键字是 System.Boolean 的别名. 它用于声明变量来存储布尔值:true 和 false. 备注 如需支持三值逻辑(例如,在使用支持三值布尔类型的数据库时),请使用 bool? 类型. 对于 bool? 操作数,预定义的 & 和 | 运算符支持三值逻辑. 有关详细信息,请参阅布尔逻辑运算符一文的可以为 null 的布尔逻辑运…
ylbtech-Docs-.NET-C#-指南-语言参考-关键字-值类型:内置数值转换 1.返回顶部 1. 内置数值转换(C# 参考) 2019/10/22 C# 提供了一组整型和浮点数值类型. 任何两种数值类型之间都可以进行隐式或显式转换. 必须使用强制转换运算符 () 才能调用显式转换. 隐式数值转换 下表显示内置数值类型之间的预定义隐式转换: From 到 sbyte short.int.long.float.double 或 decimal byte short.ushort.int.u…
ylbtech-Docs-.NET-C#-指南-语言参考-关键字-值类型-:浮点数值类型 1.返回顶部 1. 浮点数值类型(C# 引用) 2019/10/22 “浮点类型”是“简单类型”的子集,可以使用文本进行初始化 . 所有浮点类型也是值类型. 所有浮点数值类型都支持算术.比较和相等运算符. 浮点类型的特征 C# 支持以下预定义浮点类型: C# 类型/关键字 大致范围 精度 大小 .NET 类型 float ±1.5 x 10−45 至 ±3.4 x 1038 大约 6-9 位数字 4 个字节…
ylbtech-Docs-.NET-C#-指南-语言参考-关键字-内置类型-值类型:整型数值类型 1.返回顶部 1. 整型数值类型(C# 参考) 2019/10/22 “整型数值类型”是“简单类型”的子集,可以使用文本进行初始化 . 所有整型类型同时也是值类型. 所有整型数值类型都支持算术.位逻辑.比较和相等运算符. 整型类型的特征 C# 支持以下预定义整型类型: C# 类型/关键字 范围 大小 .NET 类型 sbyte -128 到 127 8 位带符号整数 System.SByte byt…
ylbtech-Docs-.NET-C#-指南-语言参考-关键字-内置类型-值类型:值类型的功能 1.返回顶部 1. 值类型(C# 参考) 2018/11/26 有两种值类型: 结构 枚举 值类型的主要功能 值类型的变量包含类型的值. 例如,int 类型的变量可以包含值 42. 它不同于引用类型的变量,后者(也称为对象)包含对类型实例的引用. 将新的值分配到值类型的变量时,会复制该值. 将新的值分配到引用类型的变量时,会复制引用,而不复制对象本身. 所有值类型都隐式派生自 System.Valu…
ylbtech-Docs-.NET-C#-指南-语言参考-关键字:C# 关键字 1.返回顶部 1. C# 关键字 2017/03/07 关键字是预定义的保留标识符,对编译器有特殊意义. 除非前面有 @ 前缀,否则不能在程序中用作标识符. 例如,@if 是有效标识符,而 if 则不是,因为 if 是关键字. 此主题中的第一个表列出了是 C# 程序任意部分中的保留标识符的关键字. 此主题中的第二个表列出了 C# 中的上下文关键字. 上下文关键字仅在一部分程序上下文中有特殊含义,可以在相应上下文范围之…
Objective-C预处理器不是编译器的一部分,而是编译过程中的一个单独步骤. 简单来说,Objective-C预处理器只是一个文本替换工具,它指示编译器在实际编译之前进行必要的预处理. 我们将Objective-C预处理器称为OCPP. 所有预处理器命令都以井号(#)开头.它必须是第一个字符(前面不能有空格),并且为了便于阅读,预处理器指令应该从第一列开始. 以下部分列出了所有重要的预处理程序指令 - 编号 指令 描述 1 #define 替换预处理器宏 2 #include 从另一个文件插…
预处理过程时,会做以下事情或着更多: 将所有的#define删除,并且展开所有的宏定义: 处理所有条件编译指令,如#if,#ifdef等: 处理#include预编译指令,将被包含的文件插入到该预编译指令的位置.该过程递归进行,及被包含的文件可能还包含其他文件. 删除所有的注释//: 添加行号和文件标识:每行的格式是“#   行号   文件名   标志“,其中的”行号“与”文件名“表示从它后一行开始的内容来源于 哪一个文件的哪一行,标志可以是1,2,3,4四个数字,每个数字的含义如下: 1:表示…
返回总目录 Microsoft Visual C++ 6.0 预处理器参考手册 目录引言.......................................................................................................................3 特殊术语.................................................................................…
1.什么是预处理器 2.什么是预处理器指令 3.预处理器指令 4.宏指令 5.宏函数 6.宏函数的优缺点 7.条件编译指令 1.什么是预处理器 • 预处理器是一个程序,用来处理源程序中的预处理指令. • 一个程序在编译之前一般都要经过预处理. 2.什么是预处理器指令 • 以“#”开头的指令叫预处理指令 • 可以出现在任何位置,必须一行结束 • 如果要换行,须得用"\"来连接两行内容 3.预处理器指令 • 文件包含 #include <>#include “” • 宏定义 无…
一.变量 C#共有其中变量类型有:静态变量.实类变量.数组元素.数值参数.引用参数.输出参数和局部变量 先定义一个简单的类来说明,如下: public class VariableDefine { private static uint variableUInt; public static uint VariableUInt { get => variableUInt; set => variableUInt = value; } string VariableStr; public Var…