标签:
1. 值类型和引用类型
1.1 值类型
比如int,float,struct等。这个和C/C++中的变量差不多。
1.2 引用类型
尽管教科书上总说class是引用类型,但其行为更加像是指针。
比如你定义了一个class MyClass,现在想要一个MyClass类型的变量,那么必须这样:
MyClass myClass = new MyClass();
而不能简单地MyClass myclass完事:这样等于定义了一个无效指针,语法上没问题,但在对它赋值前编译器会阻止你使用这个变量。
这里单独说说string。它是引用类型,但它的某些行为却类似于值类型,这似乎是通过重载某些函数(例如赋值运算符)实现的。看起来C#为了方便使用string暗地里做了很多手脚。
标签:
原文地址:http://www.cnblogs.com/byeyear/p/5136581.html