c#中的结构与枚举

时间:2022-08-30 17:50:52

结构

与c++不同的是,结构应该定义在命名空间或者类里面,成员变量叫字段,字段并且有访问控制符,每个字段前要加一个下划线

例子

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace 结构
{
public enum Gender
{
男,女
}
//其实int也是一个结构;结构可以用来一次性声明多个不同类型的变量;
public struct Person
{
public string _name;//字段跟变量都可以存数据,只有字段有访问权限;每个字段前要加一个下划线;
public int _age;
public Gender _gender;
}

class Program
{
static void Main(string[] args)
{
Person zsPerson;
zsPerson._name = "张三";
zsPerson._age = 18;
zsPerson._gender = Gender.男;

}
}
}

枚举

  • 不能再main函数里定义枚举
  • 在命名空间里声明可以,也可以在这个类里面声明,不能再方法里面声明;
  • 枚举本质上是一个变量类型,
  • 枚举名要符合pascal规范,每一个单词的首字母都大写.

举个例子

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace 枚举
{
public enum Season
{
春,夏,秋,冬
}
class Program
{
//不能再main函数里定义枚举
//在命名空间里声明可以,也可以在这个类里面声明,不能再方法里面声明;
//枚举本质上是一个变量类型,
//下面声明了一个枚举类型Gender;自己定义一个新的类型,需要给出其取值范围;
public enum Gender
{
男,女
}
static void Main(string[] args)
{
//下面使用枚举;变量名=枚举规定的取值范围内的一个值;
Gender gd = Gender.男;
Console.WriteLine(gd.ToString());
Console.ReadKey();

}
}
}