随笔分类 - @C#基础
摘要:值类型与引用类型前言 最近看了很多关于值类型与引用类型的文章,涵盖了很多零零散散以及不容易让人理解的知识,因此,将这些知识整理归纳一下,便于日后复习。 文章的目录结构:概念复制方式参数传递概念 C# 中定义了许多数据类型,它们被分为两大类,一类是:值类型,另一类是:引用类型。 下面这张图具体的值类型与引用类型的划分:CategoryDescription Value typesSimple typesSigned integral:sbyte,short,int ,longUnsigned integral:byte,ushort,uint,ulongUnicode character...
阅读全文
摘要:浅、深复制以及原型模式文章的知识梳理顺序:首先比较了值类型赋值操作与引用类型的赋值操作的不同,接着讨论对于包含引用类型的值(或引用)类型进行赋值操作的情况,引出浅复制的概念,进一步思考如何进行深复制,介绍实现深复制的两种方式:1、 实现ICloneable接口 2、序列化的方法,最后介绍设计模式中的原型模式(Prototype)。值类型的赋值操作:首先新建一个结构体 Point: struct Point { // 结构的字段 public int X; public int Y; // 带参数的构造函数 // ...
阅读全文
摘要:委托的异步性与方法回调知识回顾:首先声明一个委托如下: // 这个委托指向任意输入两个整数并返回一个整数的方法. public delegate int CalculateDelegate(int x,int y);查看IL代码:由图可以看出,C#编译器处理委托类型时,自动生成派生于 System.MulticastDelegate 的 sealed 类。并定义了三个方法,其中 Invoke() 方法被用来同步的方式调用方法;BeginInvoke() 和 EndInvoke() 方法被用来异步调用方法。以下是生成的代码: sealed class Calcu...
阅读全文
浙公网安备 33010602011771号