C#本质论读书笔记

1、常量 const  特征:

  常量必须在声明时初始化,指定了值后,就不能再修改了

  常量总是静态的,不必(实际上,是不允许)在常量声明中包含修饰符 static

  不能从一个变量中提取的值来初始化常量,如果需要这么做,应使用只读字段 ???

2、引用类型和值类型

  区别:值类型直接存储其值 而 引用类型存储的是对值引用的地址 ;值类型存储在堆栈中,而引用类型存储在托管堆上

3、所有整数类型的变量都能赋予十进制或者十六进制的值,后者需要 0x 前缀 long x =0x12ab;

  为了把键入的值指定为其他整数类型,可以在数字后面加上如下字符:uint num = 1234U;  long num =1234L;  ulong num =1234UL;

  其实也没必要加,因为在编译的时候会自动加上,如:long num =8; num =num+12; 反编译过去,是 long num =8L; num = num+12L;

待续。。。

路过 随笔 北京 20160128

时间: 2024-10-06 15:42:05

C#本质论读书笔记的相关文章

闭包在.NET下的实现(编译器玩的小把戏)-----C#本质论读书笔记

参加工作以来,拜读过很多大作.有好多书读的时候感觉大彻大悟,不自觉的发出‘哦...’这样的感叹.但是随着杀猪刀(时间)不断的飞逝,不仅给我脸上带来了皱纹,还带走了不少前人总结和归纳的知识点和那些我还没来得及吸收的宝贵财富.好记性不如烂笔头,我决定开始写一些读书的笔记和工作上的心得,最好是两者能够结合起来,把知识真正的自己转化成自己的能力. 下面进入正题.闭包在程序员的日常工作几乎无所不在,当然不仅是工作,面试的时候经常也会有相关的题目.看过很多博客园上的朋友都有解释,每次重温都有‘哦...’的感

从构造函数说开去---C#本质论读书笔记

记得一年之前在写代码的时候问了小伙伴一个问题,我说:“你说如果我在声明的时候初始化,它会在对象初始化的哪个阶段被赋值?” 小伙伴想了想回答我:“还是在构造函数里面给变量初始化吧.” 程序当口,时间比较紧,没有空去验证一下这个问题,后来也就慢慢淡忘了. 这个假期翻开“C#本质论”正好里面也提到了这种情况,虽然只是一笔带过,但是也勾起了我的回忆,那今天就来记录一下这个疑问以及它延伸出来的一些知识点. 1.普通构造函数 public class ConstructionTest    {       

C#本质论读书笔记:第一章 C#概述|第二章 数据类型

第一章 1.字符串是不可变的:所有string类型的数据,都不可变,也可以说是不可修改的,不能修改变量最初引用的数据,只能对其重新赋值,让其指向内存中的一个新位置. 第二章 2.1 预定义类型或基本类型: C#语言的基本类型包括8种整数类型,2种用于科学计算的二级制浮点类型,1种用于金融计算的十进制浮点类型,1种布尔类型以及一种字符类型. 2.1.1 整数类型: 要注意int32的范围,如果是要保存10位以上的数字编号的时候,要么使用string,要么使用int64,因为int32只能保存到10

读书笔记-2015年第1本:《暗时间》

作者所说的暗时间,其实在生活中,我自己也有领悟到,领悟的时候很感慨,然而过不了几天就把这个领悟给忘得一干二净,于是又是过着重蹈覆辙的生活.现在给我的提醒就是把领悟到的东西记录下来,每天空出一些时间静下心专门来思考这些领悟到的东西.现在有幸看到自己曾经遗忘的宝贵的生活哲理,好好思考,好好领悟. 在这本书中,作者推荐了大量有价值的学习资料以及学习方法,有时间时都可以去研究学习. 我们可以看出,作者很有学问,但也可以想一下为何如此有学问?“看上去好像很高端的样子”,实际上,也就是作者曾经在一年内看过很

《C#图解教程》读书笔记之三:方法

本篇已收录至<C#图解教程>读书笔记目录贴,点击访问该目录可获取更多内容. 一.方法那些事儿 (1)方法的结构:方法头-指定方法的特征,方法体-可执行代码的语句序列: (2)方法的调用:参数.值参数.引用参数.输出参数.参数数组: ①参数: 形参-本地变量,声明在参数列表中:形参的值在代码开始之前被初始化: 实参-实参的值用于初始化形参: ②值参数: 为形参在栈上分配内存,将实参的值复制到形参: ③引用参数: 不为形参在栈上分配内存,形参的参数名作为实参变量的别名指向同一位置,必须使用ref关

《C#图解教程》读书笔记之五:委托和事件

本篇已收录至<C#图解教程>读书笔记目录贴,点击访问该目录可获取更多内容. 一.委托初窥:一个拥有方法的对象 (1)本质:持有一个或多个方法的对象:委托和典型的对象不同,执行委托实际上是执行它所"持有"的方法.如果从C++的角度来理解委托,可以将其理解为一个类型安全的.面向对象的函数指针. (2)如何使用委托? ①声明委托类型(delegate关键字) ②使用该委托类型声明一个委托变量 ③为委托类型增加方法 ④调用委托执行方法 (3)委托的恒定性: 组合委托.为委托+=增加

《Effective C++》读书笔记汇总

我之前边读<Effective C++>边写下每个条款的读书笔记,这一版是C++11之前的版本.这里我将每个条款令我印象深刻的点小结一下. 1.C++包括:Plain C(面向过程).OOP(面向对象).模板(泛型和模板元编程).STL(C++标准库). 2.用inline.enum.const代替#define.#define定义的宏,一旦复杂起来,高手都很难掌控.不要带入C的习惯. 3.灵活使用const前缀.不需要进行改变的数据加上const前缀.指针的const前缀有两种形式,cons

【读书笔记】《Linux内核设计与实现》内核同步介绍&内核同步方法

简要做个笔记,以备忘. 需同步的原因是,我们并发访问了共享资源.我们将访问或操作共享资源的代码段称"临界区",如果两个执行线程处于同一临界区中同时执行,称"竞争条件".这里术语执行线程指任何正在执行的代码实例,如一个在内核执行的进程.一个中断处理程序或一个内核线程. 举个简单例子,i++操作.该操作可以转换为下面的机器指令序列: 1.得到当前变量i的值,并保存到一个寄存器. 2.将寄存器的值加1. 3.将i的新值写回到内存中. 当两个线程同时进入这个临界区,若i初值

鸟哥的Linux私房菜 基础学习篇读书笔记(7):Linux文件与目录管理

这一章主要讲述的是如何操作与管理Linux系统中的文件和目录,主要包括目录间的切换,目录的创建与删除,文件的创建与删除,文件的查找,文件内容的查看等等. 前一章中已经讲过相对路径以及绝对路径,绝对路径就是指从根目录("/")开始写起的路径名,而相对路径绝不会由根目录开始写起,相反,相对路径是相对于当前工作目录的路径名.Linux操作系统中有几个特殊的目录: . 代表此层目录: .. 代表上一层目录: - 代表前一个工作目录: ~ 代表当前用户身份所在的主文件夹: ~account 代表