C#枚举,结构和类

时间:2011-07-01 11:04:31

标签: c# class enumeration struct

任何人都可以在枚举,结构和类之间了解C#的主要差异吗?我通常只使用这类代码的类,但从未真正看到需要使用其他代码?

2 个答案:

答案 0 :(得分:5)

MSDN是一个很好的参考:ClassEnumStruct

答案 1 :(得分:2)

参考:

Introduction to Objects and Classes in C# - Introduction

Introduction to Objects and Classes in C# - World's Classes and Objects

  

面向对象编程   程序员编写独立的部分   一个叫做类的程序。每节课   代表该计划的一部分   功能和这些类可以   组装成一个程序。

     

在我们的世界里,我们有课程和   这些类的对象。一切   在我们的世界被认为是一个   宾语。例如,人们是   物体,动物也是物体,   矿物是物体;一切都在   世界是一个对象。容易,对吗?   那课怎么样?

     

在我们的世界中,我们必须要与众不同   在我们生活的物体之间   用。所以我们必须明白那里   是分类(这是他们的方式   得到的名称和概念   Class)用于所有这些对象。对于   例如,我是一个对象,大卫是   对象也是,玛丽亚是另一个对象。   所以我们来自一个人类(或   类型)。我有一只叫Ricky的狗   这是一个对象。我朋友的狗,多比,   也是一个对象所以他们来自一个   狗类(或类型)。

一个结构与类似,但有几个不同之处。

参考Structs

  

结构是一种值类型。帮助   理解结构,它是有帮助的   与班级进行比较。而   struct是值类型,class是a   参考类型。值类型成立   他们在记忆中的价值   声明,但引用类型包含   引用内存中的对象。如果   你复制一个结构,C#创建一个新的   对象的副本并分配   对象的副本到一个单独的   struct实例。但是,如果你复制   一个类,C#创建一个新的副本   引用对象和赋值   引用的副本   单独的类实例。结构不能   有破坏者,但课程可以有   析构函数。另一个区别   结构和类之间是一个   struct无法实现   继承,但一个班级可以......

Enumerations本质上是唯一的类型,允许您将符号名称分配给整数值。