您现在的位置:网络学院 > 开发教室 > 跟我学.net
总体了解C#(7-8 集合和foreach语句/结构)

出处:PConline
责任编辑:zwg

[02-5-24 17:55] 作者:荣耀翻译/ASPCool.com



8.结构

把C#的结构视为使语言的类型系统更为优雅而不仅是一种“如果你需要的话可以利用之写出真正有效率的代码”的概念更好些。

在C++中,结构和类(对象)都可分配在栈或堆上。在C#中,结构永远创建在栈上,类(对象)则永远创建在堆上。使用结构实际上可以生成更有效率的代码:

public struct Vector

{

public float direction;

public int magnitude;

}

Vector[] vectors = new Vector [1000];


这将把1000个Vector分配在一块空间上,这比我们把Vector声明为类并使用for循环去实例化1000个独立的Vector来得有效率得多。【译注:因怀疑原文有误,此处故意漏译一句,但不应影响你对这节内容的理解】:

int[] ints = new ints[1000];//【译注:此处代码有误,应为int[] ints = new int[1000];】

C#完全允许你扩展内建在语言中的基本类型集。实际上,C#所有的基本类型都以结构方式实现的。int型只不过是System.Int32结构的别名,long型不过是System.Int64结构的别名等等。这些基本类型当然可被编译器特别处理,但是语言本身并无区别【译注:意思是语言自身对处理所有类型提供了一致的方法】。在下一节中,我们可看到C#是如何做到这一点的。

[上一页]


相关文章:

Visual C#.Net网络程序开发-Tcp篇(1)
浅析C#中的套接字编程
Visual C#.Net网络程序开发-Tcp篇(2)
总体了解C#(目录)
总体了解C#(1 C#和Java)
总体了解C#(2 属性)
用设计模式固化你的C#程序(目录)
总体了解C#(3 索引器)
Visual C#.Net网络程序开发-Tcp篇(3)
总体了解C#(4 委托)


内容搜索 
高级搜索

本栏今日焦点