- 博客(7)
- 收藏
- 关注
原创 理解null值和C#中可空类型(NullAble<T>)
在C#中有一个关键字是null,它表示不引用任何对象的空引用的文字值,也就是当一个引用类型的变量被赋予null值时,该变量是空引用,没有在堆上分配空间,null是引用类型变量的默认值。从定义上看,只有引用类型变量才可以赋予null值。 可以定义一个类,即可空类型,就是指可以赋值为null的类型。可空类型是System.Nullable结构的实例。若是可空类型,则既可以表示其基础值类型正常
2013-07-26 12:22:13 3215
转载 扩展欧几里得算法
我的理解能力实在欠佳,欧几里德算法老早就已经消化在肚子里了,但是却花了我两天的时间去理解扩展的欧几里德算法。在这里我把自己对扩展欧几里德的想法写在下面,以备不时之需~ 首先扩展欧几里德主要是用来与求解线性方程相关的问题,所以我们从一个线性方程开始分析。现在假设这个线性方程为a*x+b*y=m,如果这个线性方程有解,那么一定有gcd(a,b) | m,即a,b的最大公约数能够整除m(
2013-10-18 10:26:23 541
原创 数据类型转换系列——第一篇 显示和隐式转换
当我们在编写程序时,会发现有时候需要对不同类型的数据进行互相转换,之所以进行数据转换,是因为C#是在编译时静态类型化的,因此变量在声明后就无法再次声明,或者无法用语存储其他类型的值,除非该类型可以转换为变量的类型。 隐式转换隐式转换:由于该转换时一种安全类型的转换,不会导致数据丢失,因此不需要任何特殊的语法。例如从较小整型到较大整型
2013-07-27 12:02:20 1009
原创 装箱和拆箱
所谓的装箱和拆箱是针对于值类型和引用类型而言的。先说一下值类型和引用类型的区别,声明一个值类型变量,则编译器会在栈上分配一个空间,这个空间对应着该值类型变量,空间里存储的就是该变量的值;而引用类型的实例编译器会将其分配在堆上,新建一个引用类型实例,得到的变量值对应的是该实例的内存分配地址,简单的说,二者在内存中的存储形式不同。 但是现在又有一个问题出来了,那就是什么是堆什么是栈?
2013-07-26 11:29:24 724
原创 一个简单的C#编写的小机器人对话程序
编写一个C#版的小机器人儿,要求实现的功能有:1)机器人有不同的名字;2)可以与人打招呼(SayHello 例如我叫***);3)对异常情况(错误的喂食数字,喂得太多撑死了,问得问题太多,导致饿死了)进行处理;4)有两个机器人
2013-07-09 00:06:39 4968
原创 浅谈C#中的属性
class person //名为person的类{ private int age; //名为age,int型私有字段 public int Age //名为Age,public型共有属性,目的为 { //设置获取字段age,可根据需要设置不同访问级别 set {
2013-07-07 23:51:50 550
原创 C#的初始
C#是同JAVA,C++一样是面向对象编程语言。故与其他编程语言一样,C#也有着与其他面向对象编程语言的共同点,那就是封装,继承和多态。
2013-07-05 17:33:13 559
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人