夜光序言:
你的脸上云淡风轻,谁也不知道你的牙咬得有多紧。你走路带着风,谁也不知道你膝盖上仍有曾摔伤的淤青。你笑得没心没肺,没人知道你哭起来只能无声落泪。你必须非常努力,才能看起来毫不费力。
正文:
补充:类与结构体的区别
1、结构体中声明的字段无法赋予初值,类可以:
struct first { private int aa = 1; }
执行以上代码将出现“结构中不能实例属性或字段初始值设定”的报错,而类中无此限制,代码如下:
class second { private int bb= 1; }
2、结构体的构造函数中,必须为结构体所有字段赋值,类的构造函数无此限制:
补充:类与结构的选择
首先明确,类的对象是存储在堆空间中,结构存储在栈中。堆空间大,但访问速度较慢,栈空间小,访问速度相对更快。
故而,当我们描述一个轻量级对象的时候,结构可提高效率,成本更低。
当然,这也得从需求出发,假如我们在传值的时候希望传递的是对象的引用地址而不是对象的拷贝,就应该使用类了。
C# 枚举(Enum)
枚举是一组命名整型常量。枚举类型是使用 enum 关键字声明的。
C# 枚举是值类型。
换句话说,枚举包含自己的值,且不能继承或传递继承。
声明 enum 变量
声明枚举的一般语法:
enum <enum_name> { enumeration list };
其中,
- enum_name 指定枚举的类型名称。
- enumeration list 是一个用逗号分隔的标识符列表。
枚举列表中的每个符号代表一个整数值,一个比它前面的符号大的整数值。默认情况下,第一个枚举符号的值是 0.例如:
enum Days { Sun, Mon, tue, Wed, thu, Fri, Sat };
实例
下面的实例演示了枚举变量的用法:
实例
using System;
namespace GeniusTest01
{
public class Class65
{
enum Day { Sun, Mon, Tue, Wed, Thu, Fri, Sat };
static void Main()
{
int x = (int)Day.Sun;
int y = (int)Day.Fri;
Console.WriteLine("Sun = {0}", x);
Console.WriteLine("Fri = {0}", y);
}
}
}