看《visual C#2008 开发技术实例详解》有感一

  若我所说有错,请大神不吝赐教。谢谢。

  我就读于华科武昌分校(三本院校),大学四年匆匆而过,试着去找了工作,体会颇多,也学到了不少。在实际的面试中才真正的体会到什么叫做“学校”的区别。这么说就会有一群牛人出来说:学校和你个人的发展有关系吗?只要你愿意,不一样学的好?

  每个人都有自己的看法,每个人都有自己的价值观,原因也会因此不同。我不喜欢抱怨,抱怨只会让事情变得更加复杂。(我喜欢和同学玩DOTA,经验由此得)

  废话不多说,来看看书吧。这本书讲的东西很多,学过c的同学前7章看的都不会吃力。在这7章中有些东西个人以为很需要在意一下:

1.decimal

  decimal 关键字表示 128 位数据类型。同浮点型相比,decimal 类型具有更高的精度和更小的范围,这使它适合于财务和货币计算。

  大概是在数据库以外第一次看到这种类型。

2.Object

  C#语言中,所有类型都是直接或间接从object类型继承的。可以将任何类型的值赋给object类型变量。其赋值过程被命名为“装箱”,反之为“拆箱”。其实我还是很好奇什么是沙箱(sandbox)。但是知道我的基础还不到位,所以没去搜索。

3.程序堆栈和托管内的堆

  说道这个就会说到值类型和引用类型。值类型存储在程序堆栈,引用类型存储在托管内存得的堆中。

  值类型很常见(结构体也是值类型),就说说引用类型吧。

  个人对引用类型的认识如下,以类为例:

  clsss program{******}

  新建一个实例:

  program p=new program();

  此时系统会在内存中创建一个实例,p存储的是实例的起始段的地址(以指针的方式去理解)。

  program p0=p;

  此时,是又创建了一个指向program实例的一个指针,其存储的内容与p一样;

  若修改p0.value就是修改p.value。

  在引用类型中string又有点特殊;

  (object)str1==(object)str2;  是验证string在托管内存的位置

  str1==str2;是验证两个字符串的内容是否相同。

                      

  今天就写到此处吧~愿所有的程序员都找到一个美女老婆。。哈哈哈

posted on 2013-02-05 11:57  喵敏  阅读(372)  评论(3)    收藏  举报

导航