常量和字段

作者:追风剑情 发布于:2021-5-7 9:26 分类:C#

常量 常量是值从不变化的符号。定义常量符号时,它的值必须能在编译时确定。确定后,编译器将常量值保存到程序集元数据中。这意味着只能定义编译器识别的基元类型的常量。在C#中,以下类型是基元类型,可用于定义常量 :Boolean,Char,Byte,SByte,Int16,UInt16,Int32,UInt32,Int64,UInt64,Single,Double,Decimal和Stri...

阅读全文>>

标签: C#

评论(0) 浏览(39)

C#参数

作者:追风剑情 发布于:2021-3-18 15:31 分类:C#

编译器会为可选参数应用定制特性: System.Runtime.InteropServices.OptionAttribute 编译器会为参数默认值应用定制特性:System.Runtime.InteropServices.DefaultParameterValueAttribute 编译器会为params参数应用定制特性:System.ParamArrayAttribute 重...

阅读全文>>

标签: C#

评论(0) 浏览(140)

System.Tuple类型

作者:追风剑情 发布于:2021-3-15 13:53 分类:C#

在System命名空间,Microsoft定义了几个泛型Tuple类型,它们全部从Object派生,区别只在于元数(泛型参数的个数)。 示例——Tuple // 这是最简单的: [Serializable] public class Tuple<T1> { private T1 m_Item1; public Tuple(T1 item1) { m_...

阅读全文>>

标签: C#

评论(0) 浏览(177)

C#属性(Property)

作者:追风剑情 发布于:2021-3-15 9:55 分类:C#

示例 class Program { static void Main(string[] args) { Employee e = new Employee() { Name = "Jeff", Age = 45 }; //省略圆括号,默认调用无参构造器 Employee e1 = new Employee { Name = "Jeff", Age = 45 }...

阅读全文>>

标签: C#

评论(0) 浏览(193)

定制特性(Attribute)

作者:追风剑情 发布于:2021-3-10 10:28 分类:C#

本章内容: ● 使用定制特性 ● 定义自己的特性类 ● 特性构造器和字段/属性数据类型 ● 检测定制特性 ● 两个特性实例的相互匹配 ● 检测定制特性时不创建从Attribute派生的对象 ● 条件特性类 本章讨论 Microsoft .NET Framework 提供的最具创意的功能之一:定制特性(custom attribute)。利用定制特性,可宣告式地为自己的代码...

阅读全文>>

标签: C#

评论(0) 浏览(303)

数组(System.Array)

作者:追风剑情 发布于:2021-3-8 9:38 分类:C#

本章内容: 初始化数组元素 ● 数组转型 ● 所有数组都隐式派生自 System.Array ● 所有数组都隐式实现IEnumerable,ICollection 和 IList ● 数组的传递和返回 ● 创建下限非零的数组 ● 数组的内部工作原理 ● 不安全的数组访问和固定大小的数组 数组是允许将多个数据项作为集合来处理的机制。CLR 支持一...

阅读全文>>

标签: C#

评论(0) 浏览(186)

System.String

作者:追风剑情 发布于:2021-2-4 9:15 分类:C#

➤ System.Char 类处理字符。 ➤ System.String 类处理不可变(immutable)字符串(一经创建,字符串便不能以任何方式修改)。 ➤ System.Text.StringBuilder 类高效率地动态构造字符串。 ➤ System.Security.SecureString 类保护密码和信用卡资料等敏感字符串。 ➤ System.Globalization.Un...

阅读全文>>

标签: C#

评论(0) 浏览(540)

C#接口

作者:追风剑情 发布于:2021-1-29 9:33 分类:C#

接口对一组方法签名进行了统一命名。接口允许定义事件、无参属性、有参属性(C#的索引器)。所有这些东西本质上都是方法,它们只是语法上的简化。不过,接口不能定义任何构造器方法,也不能定义任何实例字段。 虽然CLR允许接口定义静态方法、静态字段、常量和静态构造器,但符合CLS标准的接口绝不允许,因为有的编程语言不能定义或访问它们。事实上,C#禁止接口定义任何一种这样的静态成员。 ...

阅读全文>>

标签: C#

评论(0) 浏览(495)

委托

作者:追风剑情 发布于:2021-1-22 9:20 分类:C#

委托: 官方文档 本章要讨论回调函数。回调函数是一种非常有用的编程机制,它的存在已经有很多年了。Microsoft.NET Framework 通过委托来提供回调函数机制。不同于其他平台(比如非托管C++)的回调机制,委托的功能要多得多。例如,委托确保回调方法是类型安全的(这是 CLR 最重要的目标之一)。委托还允许顺序调用多个方法,并支持调用静态方法和实例方法。 一、...

阅读全文>>

标签: C#

评论(0) 浏览(296)

System.Collections.Generic.List<T>

作者:追风剑情 发布于:2021-1-21 17:38 分类:C#

System.Collections.Generic.List<T>的方法总结 List<T>类官方文档 List<T>扩展方法官方文档 using System; using System.Collections.Generic; using System.Linq; using System.Text; using ...

阅读全文>>

标签: C#

评论(0) 浏览(238)

可空值类型

作者:追风剑情 发布于:2021-1-18 10:47 分类:C#

一、可空值类型介绍 我们知道值类型的变量永远不会为 null:它总是包含值类型的值本身。事实上,这正是“值类型”一词的由来。遗憾的是,这在某些情况下会成为问题。例如,设计数据库时,可将一个列的数据类型定义成一个 32 位整数,并映射到 FCL(Framework Class Library)的 Int32数据类型。但是,数据库中的一个列可能允许值为空;也就是说,该列在某一行上允许没有任...

阅读全文>>

标签: C#

评论(0) 浏览(238)

约束执行区域(CER)

作者:追风剑情 发布于:2021-1-14 9:26 分类:C#

许多应用程序都不需要健壮到能从任何错误中恢复的地步。许多客户端应用程序都是这样设计的,比如 Notepad.exe(记事本)和 Calc.exe(计算器)。另外,我们中的许多人都经历过Microsoft Office 应用程序(比如 WinWord.exe, Excel.exe 和 Outlook.exe)因为未处理的异常而终止的情况。此外,许多服务器端应用程序(比如 Web 服务器)都是无状态的...

阅读全文>>

标签: C#

评论(0) 浏览(232)

事件

作者:追风剑情 发布于:2021-1-12 16:07 分类:C#

示例一:自定义事件类 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace ConsoleApp16 { class Program { /...

阅读全文>>

标签: C#

评论(0) 浏览(274)

WPF介绍

作者:追风剑情 发布于:2021-1-8 17:22 分类:C#

WPF官方文档 1、xaml与隐藏代码如何关联? 在xaml中通过设置x:Class来关联代码类,在代码类中的构造方法中调用InitializeComponent()方法来整合控件元素。 2、按功能分类的 WPF 控件 下面列出了内置的 WPF 控件: ● 按钮: Button 和 RepeatButton 。 ● 数据显示: DataGrid 、 L...

阅读全文>>

标签: C#

评论(0) 浏览(219)

托管堆和垃圾回收

作者:追风剑情 发布于:2021-1-7 17:34 分类:C#

一、托管堆基础 每个程序都要使用这样或那样的资源,包括文件、内存缓冲区、屏幕空间、网络连接、数据库资源等。事实上,在面向对象的环境中,每个类型都代表可供程序使用的一种资源。要使用这些资源,必须为代表资源的类型分配内存。以下是访问一个资源所需的步骤。 1.调用 IL 指令 newobj,为代表资源的类型分配内存(一般使用 C# new 操作符来完成)。 2.初始化内存,设置...

阅读全文>>

标签: C#

评论(0) 浏览(406)

WPF—TreeView

作者:追风剑情 发布于:2020-12-23 17:44 分类:C#

xaml <Window x:Class="DataEditor.JsonWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" ...

阅读全文>>

标签: C#

评论(0) 浏览(294)

程序集加载和反射

作者:追风剑情 发布于:2020-12-17 13:46 分类:C#

.NET Framework中的动态编程 .NET中的反射 巴科斯-诺尔范式(BNF)语法 重要提示  .NET Framework 4.5引入了新的反射API。旧的API缺点太多。例如,它对LINQ的支持不好。内建的策略对某些语言来说不正确,有时不必要地强制加载程序集,而且为很少遇到的问题提供了过于复杂的API。新API解决了所有这些问题。但至少就.NE...

阅读全文>>

标签: C#

评论(0) 浏览(444)

Base64

作者:追风剑情 发布于:2020-12-4 17:50 分类:C#

using System; using System.Text; /// <summary> /// Base64加密解密 /// </summary> public sealed class Base64 { /// <summary> /// 加密 /// </summary> public s...

阅读全文>>

标签: C#

评论(0) 浏览(218)

AppDomain

作者:追风剑情 发布于:2020-10-29 9:19 分类:C#

一、AppDomain CLR COM服务器初始化时会创建一个AppDomain。AppDomain是一组程序集的逻辑容器。CLR初始化时创建的第一个AppDomain称为“默认AppDomain”,这个默认的AppDomain只有在Windows进程终止时才会被销毁。 除了默认AppDomain,正在使用非托管COM接口方法或托管类型方法的宿主还可以要求CLR创建额外的A...

阅读全文>>

标签: C#

评论(0) 浏览(563)

CLR寄宿

作者:追风剑情 发布于:2020-10-28 9:55 分类:C#

公共语言运行库 (common language runtime,CLR) 是托管代码执行核心中的引擎。       .NET Framework在Windows平台的顶部运行。这意味着.NET Framework必须用Windows能理解的技术来构建。首先,所有托管模块和程序集文件都必须使用Windows PE文件格式,而且要么是Windows EXE文...

阅读全文>>

标签: C#

评论(0) 浏览(340)

深度拷贝对象

作者:追风剑情 发布于:2020-9-22 14:58 分类:C#

using System; using System.IO; using System.Runtime.Serialization; using System.Runtime.Serialization.Formatters.Binary; namespace ConsoleApp6 { class Program { static void M...

阅读全文>>

标签: C#

评论(0) 浏览(291)

日志工具类—LogUtil

作者:追风剑情 发布于:2020-9-3 10:42 分类:C#

using System; using System.Text; using System.IO; namespace UNetwork { /// <summary> /// 日志工具类 /// </summary> public sealed class LogUtil { private ...

阅读全文>>

标签: C#

评论(0) 浏览(340)

Powered by emlog  蜀ICP备18021003号-1   sitemap

川公网安备 51019002001593号