原来学习的是C++,现在使用unity引擎,自然而然的弃java而选择c#了,不过c#与c++语法虽然相似,但是还是有很多的不同。
首先说一说值类型和引用类型这个在面试题中经常会遇到的问题。
一 值类型 : 分为结构类型和枚举类型。 粗体表示和c++不同的。对值类型的赋值会为之创建一个值的拷贝。
http://msdn.microsoft.com/zh-cn/library/c8f5xwh7.aspx 这里有详细解释
预定义的有 (简单类型)
bool ,
decimal (c++没有,是表示 128 位数据类型。 同浮点型相比,具有更高的精度和更小的范围,这使它适合于财务和货币计算),
sbyte 有符号 8 位整数
byte 无符号8位整数
short 有符号 16 位整数
ushort 无符号 16 位整数
int
uint
long
ulong
char
float
double
枚举类型
可空值类型
二 引用类型 引用类型的值是一个指向某个类型实例(instance)的引用,而这个实例叫做对象(object)。
引用类型可以是 类类型,接口类型,数组类型,委托类型(最接近c++里的函数指针)。
类类型:
System.String
System.Object
System.ValueType(这个是所有值类型的基类)
System.Enum
System.Array
System.Delegate
System.Exception