2014年2月24日

C# 类和结构体的区别

摘要: 结构体和类同样能够定义字段,方法和构造函数,都能实例化对象,这样看来结构体和类的功能好像是一样的了,但是他们在数据的存储上是不一样的(以下摘录):C#结构体和类的区别问题:在C#编程语言中,类属于引用类型的数据类型,结构体属于值类型的数据类型,这两种数据类型的本质区别主要是各自指向的内存位置不同。传递类的时候,主要表现为是否同时改变了源对象。C#结构体和类的区别技术要点: ◆类在传递的时候,传递的内容是位于托管内存中的位置,结构体在传递的时候,传递的内容是位于程序堆栈区的内容。当类的传递对象修改时,将同时修改源对象,而结构体的传递对象修改时,不会对源对象产生影响。 ◆在一个类中,可以定义默认的 阅读全文

posted @ 2014-02-24 23:51 晟睿小屋 阅读(279) 评论(0) 推荐(0)

C#预处理指令

摘要: 1.#define相当定义一个变量 例如#define DEBUG(这个符号不是实际代码的一部分,而只是在编译器编译代码时存在)在C#代码中它没有任何意义.2.#undef:正好相反-删除符号的定义3.#if,#elif,#else,#endifint DoSomeWork(double x){ #if DEBUG Response.Writer("hello world"); #endif}这段代码会像往常那样编译但是response.writer命令包含在#if子句内,这行代码只有在前面的#define命令定义了符号DEBUG后才执行。4.#warning 和#erro 阅读全文

posted @ 2014-02-24 23:27 晟睿小屋 阅读(190) 评论(0) 推荐(0)

常量const、readonly的区别

摘要: 在C#中定义常量的方式有两种,一种叫做静态常量(Compile-time constant),另一种叫做动态常量(Runtime constant)。前者用“const”来定义,后者用“readonly”来定义。 对于静态常量(Compile-time constant),它的书写方式如下: public const int MAX_VALUE = 10; 为什么称它为静态常量呢,因为如上声明可以按照如下理解(注意:如下书写是错误的,会出编译错误,这里只是为了方便说明)。 public static const int MAX_VALUE = 10; 用const定义的常量,对于... 阅读全文

posted @ 2014-02-24 23:09 晟睿小屋 阅读(205) 评论(0) 推荐(0)

C#委托、事件、回调函数

摘要: .Net编程中最经常用的元素,事件必然是其中之一。无论在ASP.NET还是WINFrom开发中,窗体加载(Load),绘制(Paint),初始化(Init)等等。 “protected void Page_Load(object sender, EventArgs e)”这段代码相信没有人不熟悉的。细心一点一定会发现,非常多的事件方法都是带了“object sender, EventArgs e”这两个参数。这是不是和委托非常相似呢? 一、委托(有些书中也称为委派) 委托是什么呢?这个名字的意思已经赋予了我们想象的空间,你是编程的,你现在正在写一个ASP.NET网页,而JS是你不熟悉... 阅读全文

posted @ 2014-02-24 22:34 晟睿小屋 阅读(226) 评论(0) 推荐(0)

导航