1. 基元类型

1.不管在什么操作系统上c#的int始终代表32位整数。

2.c#中long代表64位。

  1. 类型转换

安全转换时,才允许隐式转型。

不安全转换时,为显式转型。

  1. 溢出检测方法

控制溢出的一个办法时使用/checked+编译器开关。(检测运算上下溢。)

要检测溢出的地方加;

Checked{

}

  1. 防止溢出建议

  1. 尽量使用有符号数值类型(如:Int32和Int64)。

    不要使用无符号数值类型(如:UInt32和UInt64)。

  2. 如果可能发生溢出你不希望溢出的话则放入checked块中(如:无效的输入数据,等)。
  3. 允许发生溢出的代码显示放到unchecked块中。
  1. 引用类型和值类型

1.任何称为"类"的类型都是——引用类型。

2.所有值类型都称为——结构或枚举。

3.一个值类型可以实现一个或多个接口。

4.C#中struct声明的类型是值类型。

5.用class声明的类型为引用类型。

Class声明的为引用类型:在堆上分配,是对指针的修改。

Static声明的为值类型:在栈上分配,是对值的修改。

引用类型:对指针指向的堆中数据进行修改。

值类型:对栈中开辟内存的数据直接修改。

装箱:为了将一个值类型转换成一个引用类型。

拆箱:就是获取一个指针的过程

  1. 引用类型

Class声明的为引用类型:在堆上分配,是对指针的修改。

引用类型:对指针指向的堆中数据进行修改。

  1. 值类型

Static声明的为值类型:在栈上分配,是对值的修改。

值类型:对栈中开辟内存的数据直接修改。

值类型对象有两种表示形式:未装箱形式和已装箱形式。

  1. 值类型的装箱与拆箱

  1. 装箱

用意:为了将一个值类型转换成一个引用类型

  1. 拆箱

定义:

  1. 获取已装箱的Point对象中的各个Point字段地址(为拆箱)。
  2. 将这些字段包含的值从堆中复制到基于栈的值类型实例中。

  1. 对象相等性和同一性

  1. 对象哈希码

  1. Dynamic

读书笔记_CLR.via.c#第五章_基元类型_引用类型_值类型相关推荐

  1. 《CLR via C#》读书笔记 之 基元类型、引用类型和值类型

    第五章 基元类型.引用类型和值类型 2013-02-27 5.3 值类型的装箱和拆箱     5.3.2 对象的相等性和同一性 参考 ToDo: 什么时候使用值类型,什么时候使用引用类型 5.3 值类 ...

  2. 第五章 基元类型、引用类型、值类型 CLR学习第五课

    一.基元类型:编译器直接支持的数据类型称为基元类型(如int类型其对于的是system.int32). 二.类型溢出,可以用checked 和unchecked进行类型溢出检查和不进行类型溢出检查.一 ...

  3. 《Real-Time Rendering 4th Edition》读书笔记--简单粗糙翻译 第五章 着色基础 Shading Basics

    写在前面的话:因为英语不好,所以看得慢,所以还不如索性按自己的理解简单粗糙翻译一遍,就当是自己的读书笔记了.不对之处甚多,以后理解深刻了,英语好了再回来修改.相信花在本书上的时间和精力是值得的. -- ...

  4. C语言基础教程读书笔记5.2.(第五章函数和存储类2)

    4.作用域规则 标示符只能在说明或对他定义它的函数体或分程序内饰可见的,而在该函数体或分程序外则是不可见的. 举个例子: # include <stdio.h> int main() { ...

  5. 《java编程思想》读书笔记(二)第五章(2)

    成员初始化 Java尽力保证:所有变量在使用前都能得到恰当的初始化. 对于方法的局部变量,Java会以编译时报错的形式贯彻这种保证,比如: 1 void f() 2 { 3 int i; //这里编译 ...

  6. 第五章 基元类型,引用类型和值类型

    目录 5.1 编程语言的基元类型 5.2 引用类型和值类型 5.3 值类型的装箱和拆箱 5.4 对象哈希码 5.5 dynamic基元类型 5.1 编程语言的基元类型 编译器直接支持的数据类型称为基元 ...

  7. 《.NET框架程序设计》第5章 基元类型、引用类型与值类型

    5.1 基元类型 基元类型可以用快捷语法.比如int a=0;等同于System.Int32 a=new System.Int32(); 建议,使用全名,为了代码含义看起来更清晰. 5.1.1 Che ...

  8. 【读书笔记】.NET本质论第四章-Programming with Type(Part Two)

    欢迎阅读本系列其他文章: [读书笔记].NET本质论第一章 The CLR as a Better COM [读书笔记].NET本质论第二章-Components(Part One) [读书笔记].N ...

  9. 陈宝林《最优化理论与算法》超详细学习笔记 (七)————第五章 运输问题

    陈宝林<最优化理论与算法>超详细学习笔记 (七)----第五章 运输问题 第1节 运输问题的数学模型 第2节 表上作业法 2.1 确定初始基可行解 2.2 最优解的判别 2.3 改进的方法 ...

最新文章

  1. 《企业软件交付:敏捷与高效管理精要》——1.6 结论
  2. Android Widget 中ListView加载网络图片
  3. socket通信需要网线连接吗_socket网络编程基础知识篇
  4. mapreduce阶段出现pending的原因及解决
  5. MySQL入门第三天(下)——存储过程与存储引擎
  6. shareplex三点同步配置
  7. iOS 模拟器设置输入中文
  8. 巴比特 | 元宇宙每日必读:红杉中国“雇”了一位虚拟员工,自称每秒可看百份商业计划书,期待时薪为0.68元...
  9. 【ML】从特征分解,奇异值分解到主成分分析
  10. PHPProxy建立代理服务器
  11. 【无标题】【光纤光缆小知识】多模光纤的分类及应用
  12. 腹肌锻炼视频(02):八种基本动作
  13. ClickHouse 之 FORMAT 应用
  14. 新特效火爆抖音!各路神仙齐唱《蚂蚁呀嘿》,网友:短短几秒需一生来治愈
  15. Glide加载常用类型图片(带白色边框的圆形图、圆角矩形图片、圆形图片)
  16. 带有图片的Excel信息导入
  17. 工作进度跟踪表excel_在Excel中跟踪时间
  18. ESP8266 AP模式热点
  19. 关于naked (C++)
  20. RT-Thread 软件定时器(学习笔记)

热门文章

  1. 相较神经网络,大名鼎鼎的傅里叶变换,为何没有一统函数逼近器?
  2. 北京/上海内推 | 字节跳动AI Lab招聘NLP算法模型优化方向实习生
  3. BERT原理、代码、相关模型、精调技巧,看这个就够了
  4. MixPath:基于权重共享的神经网络搜索统一方法
  5. 线下沙龙 × 上海 | 小身材大能量!用英伟达智能小车Jetbot玩转深度学习
  6. 第三期CSIG图像图形学科前沿讲习班-详细日程
  7. access找不到输入表或者dual_数据表dual表的用途是什么?
  8. 【Java代码】Java版本的NGender根据中文姓名猜测其性别及男性化/女性化程度(Python版本地址+Java版本源码+基础数据)
  9. 【Java代码】京东商品全部分类数据获取(建表语句+Jar包依赖+树结构封装+爬虫源代码)包含csv和sql格式数据下载可用
  10. python中统计单词出现的次数_python统计文章中单词出现次数实例