跟小静读CLR via C#(03)- 对象创建和类型转换
跟小静读CLR via C#(03)- 对象创建和类型转换
本节内容不太复杂,主要是介绍类的实例创建过程,以及类型之间相互转换的知识。
一、 创建对象
CLR要求用new关键字创建类的实例。例如:
Student XiaoJing=new Student(“XiaoJing”,”1986”);
那么在创建过程中,究竟发生了什么事呢?
分配
http://cyqdata.cn/cnblogs/article-detail-41247
我也要学C语言-第二十章:结构体类型变量,结构体数组(365天编程极限学习-第1天下午)
给自己定一个目标:以每天为单位,每天所学习到的东西一定要全部理解了,实践了,记忆了才睡觉!继续战斗啦!呵呵!
上节课我们学习到了结构体的定义和初始化,我们在定义学生这个人的时候,姓名最好给char *,学号最好也用char *,因为我们用int表示学号有局限性,因为无法表示带字符的编号啦!因为有些学号不一定是纯数字的啊!成绩呢!就用float型,邮政编码呢!通讯地址呢!char *吧!因为通讯
http://cyqdata.cn/cnblogs/article-detail-41111
C#的数据类型以及内存管理机制剖析(2)
1. Object类再分析:
System.Object是所有.Net类的基类,包括值类型和引用类型。值类型为什么也是继承于System.Object的呢?Object不是引用类型吗?这个就涉及了.Net的一个有趣而神奇的机制--装箱和拆箱(box&un-box)。这个后面会提到。
Object是所有类(class)和结构(struct)的基类。Class都是继承于Object类的,str
http://cyqdata.cn/cnblogs/article-detail-41029
由浅入深CIL系列:4.抛砖引玉:使用CIL来分析string类型在.NET运算中的性能和避免装箱
一、在.NET中string是一种特殊的引用类型,它一旦被赋值在堆上的地址即不可改变,之后对其进行的字符串相加等操作之后的结果都指向另外一个堆地址,而非原来的字符串地址。现在我们看以下一段C#代码以观察string在实际编码过程中的使用。
class Program { static
http://cyqdata.cn/cnblogs/article-detail-41027
网络通信基础:基础位操作(一)bool 数据类型压缩处理
在网络游戏开发中,通讯包设计中需要尽量减少数据长度,位操作属于程序基础,用在通讯包数据压缩上,是非常适和的。
今天我们进行一个最简单的数据压缩处理,将8个bool压缩到1个byte里。
bool数据类型,大小为1bit,数值2进制显示0/1。
byte数据类型,大小为8bit,数值2进制显示00000000/11111111。
普通网络传输时,1个bool数据类型占据1字节,我们今天要做的是将8个
http://cyqdata.cn/cnblogs/article-detail-40983
由浅入深CIL系列:3.通过CIL观察.NET值类型和引用类型的内存分配
一、在.NET中,内存分配是非常重要的一大块,为了更深入的了解其分配情况,本节中我们将利用一个实例来查看其CIL语言分析内存的分配情况。下面我们首先来看实例C#源码如下:
class Program { static void Main(string[] args) {
http://cyqdata.cn/cnblogs/article-detail-40964
【原创C#】可空类型 ?和??
可空类型可以表示所有实际类型的值加上null。如果和数据库打交道,这就会很有用,因为在数据库表中遇到未定义的列是很常见的事情。
为了定义一个可空变量类型,应在底层数据类型中添加问号(?)作为后缀。注意,这种语法只对值类型是合法的,局部可空变量必须赋值一个初始值。
//定义一些局部可空类型int? a =10;double? b=3.14;bool? c=null;char? d= 'a';int
http://cyqdata.cn/cnblogs/article-detail-40805
C#的数据类型以及内存管理机制剖析(1)
尽管C#(事实上是基于.Net Framework的所有语言)自动处理了内存的分配和释放的问题,并且引入了垃圾收集机制,有完善的数据类型管理能力。但是对于很多情况下,了解其深层的机制是非常有用的,能够大大提高程序的效率。如今Phone7的发布,在移动设备和一些特殊应用上。聪明而又有技巧地处理内存管理和各种数据类型显得非常有用,能够更好得维护和开发程序。
1. Windows内存管理机制
各位要
http://cyqdata.cn/cnblogs/article-detail-40754
C#类和接口、虚方法和抽象方法及值类型和引用类型的区别
1.C#类和接口的区别
接口是负责功能的定义,项目中通过接口来规范类,操作类以及抽象类的概念!
而类是负责功能的具体实现!
在类中也有抽象类的定义,抽象类与接口的区别在于:
抽象类是一个不完全的类,类里面有抽象的方法,属性,也可以有具体的方法和属性,需要进一步的专业化。
但接口是一个行为的规范,里面的所有东西都是抽象的!
一个类只可以继承一个基类也就是父类,但可以实现多个接口
PS:
接口除了规范
http://cyqdata.cn/cnblogs/article-detail-40367
JavaScript学习笔记一——数据类型
本系列文章导航JavaScript学习笔记一——数据类型JavaScript学习笔记二——函数JavaScript学习笔记三——作用域JavaScript学习笔记四——Eval函数JavaScript学习笔记五——类和对象JavaScript学习笔记六:prototype的提出Javascript学习笔记七——原型链的原理Javascript学习笔记八——用JSON做原型Javascript学习笔
http://cyqdata.cn/cnblogs/article-detail-40214
WinForm控件开发总结(六)-----控件属性类型转换器代码详解
在上一篇文章,我为控件添加一个一个复杂属性,并且为这个属性的类型的编写了一个类型转换器,现在我们来看看这个类型转换器的代码,并解释一下这些代码的意义。 要实现一个类型转换器,我们必须要重写(override)四个方法: &
http://cyqdata.cn/cnblogs/article-detail-40201
PLI 到 COBOL 的转换-数据类型 【不搞Mainframe的可能看不懂,冷门的语言】
此文非常小众,只是想认识一下圆子里面的做大型机的朋友。文章内容是这几年做语言转换积累来下的资料。全部原创的内容,觉得有些可惜,想给做大型机开发的朋友,不过,也没有专门的地方发表,借园子的人气找点朋友。资料有800K的Excel和一个VBNET写的自动转换软件。
http://cyqdata.cn/cnblogs/article-detail-40161
WorkFlow设计篇Step.6—InvokeMethod调用对象或类型方法-WF4.0
开篇
上篇我们主要是讲述了《WorkFlow设计篇Step.5—用户自定义工作流活动-WF4.0》如何使用用户自定义活动来完成工作流的设计与开发,本篇我们将要开始讲述
设计篇的最后一章的内容,主要是讲述如何使用InvokeMethod的用法。
摘要
 
http://cyqdata.cn/cnblogs/article-detail-40121
JavaScript中的类型
一、关于类型
什么叫做类型?简单地说,类型就是把内存中的一个二进制序列赋予某种意义。比如,二进制序列0100 0000 0111 0000 0001 0101 0100 1011 1100 0110 1010 0111 1110 1111 1001 1110如果看作是64位无符号整数类型就是4643234631018606494 而按照IEEE 754规定的浮点数二进制表示规则(见附1)双精度浮点
http://cyqdata.cn/cnblogs/article-detail-39911
职场上跳槽有10种类型
当代“跳槽”一词盛行自80年代改革开放初期,当时一些大胆的有识之士勇于辞掉“铁饭碗”投身于社会商海中,具有很大的风险性,被称之为“下海”。自95年实施《劳动法》和后期劳动和社会保障制度的不断完善,原国有企业和政府机构的束缚逐步放松,加之现代企业制度的推行和用工制度改革,企业失去了对人的职位禁锢,使人才的流动由过去的&ldquo
http://cyqdata.cn/cnblogs/article-detail-39880
ASP.NET MVC 2博客系列之一:强类型HTML辅助方法
这是我针对即将发布的ASP.NET MVC 2所撰写的贴子系列的第一篇,这个博客贴子将讨论 ASP.NET MVC 2中新加的强类型HTML辅助方法。
现有的HTML辅助方法
ASP.NET MVC 1中发布了一套HTML辅助方法,可以用来在视图模板中帮助生成HTML界面。例如,要输出一个文本框,你可以在你的.aspx视图模板中使用Html.TextBox()辅助方法编写下列代码:
上面辅助方法
http://cyqdata.cn/cnblogs/article-detail-39795
下载文件时根据MIME类型自动判断保存文件的扩展名
引言
用WebClient下载远程资源时,经常会遇到类似这样的网址:
http://www.uushare.com/filedownload?user=icesee&id=2205188
http://www.guaishow.com/u/luanfujie/g9675/
我们不知道这个Url具体代表的是一个网页,还是某种类型的文件。
而有些Url虽然带有扩展名,但可能是错误的扩展名,常见
http://cyqdata.cn/cnblogs/article-detail-39734
RIA Service中对于递归实体类型处理的问题及解决方案
故事是这样开始的: 我们在开发一个Silverlight应用程序的时候使用到了RIA Service,我们需要通过该服务公开一个对文件夹的查询操作。 为此,我们建立了如下的一个实体类型using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Ru
http://cyqdata.cn/cnblogs/article-detail-39655
[设计模式]在CodeDom代码生成中使用Decorator模式实现类型创建
我估计从博客园建站开始,就不断地有文章对设计模式进行讨论了。设计模式被认为是软件工程的基础,是面向对象分析与设计的指南。博客园中不乏大量的优秀文章,针对设计模式中创建型模式、结构型模式以及行为型模式共计23种模式进行讨论,有的文章也自成体系,以不同的角度来分析各种模式的应用场景和动态特性。今天,我也在所有设计模式专家面前班门弄斧一次,冒着被喷的危险,谈谈Decorator模式的具体应用。与大多数其
http://cyqdata.cn/cnblogs/article-detail-39594
精通Javascript系列之数据类型--字符串
js一共有9种数据类型,分别是:未定义(undefined)、空(null)、布尔型
(boolean)、字符串(string)、数值(number)、对象(object)、引用
(reference)、列表(completion)。其中后3种仅仅作为JS运行中间结果的数据
类型,因此不能在代码中使用,下面先讲一下字符串String:字符串由零个或者多个字符构成。字符可以包括字母、数字、标点符号和
http://cyqdata.cn/cnblogs/article-detail-39309