• 结构体枚举类型


    结构体

    结构体类型是用户自己定义的一种类型,它是由其他类型组合而成的,可包含构造函数、常数、字段、方法、属性、索引器、运算符、事件和嵌套类型的值类型。结构在几个重要方面不同于类:结构为值类型而不是引用类型,并且结构不支持继承。

    用结构的主要思想是创建小型的对象,如Point和FileInfo等等。这可以节省内存,因为没有如类对象所需的那样有额外的引用产生。例如,当声明汉语成千上万个对象的数组时,这会引起极大的差异。

    结构体是一个变量组,将一组变量放在一起,其实就是一个自定义的集合,里面可以包含各种类型的数据,用法和集合一样。

    1、定义

    结构体一般定义在Main函数上面,位于Class下面,作为一个类;一般情况Struct定义在Main函数前面,Main函数里面的地方都可以使用。参数前面加上public代表公用变量。

    格式:

    struct+结构体名称

    {

    public int+变量名;

    public string +变量名;

    public int +变量名;

    }

    以上就是定义一个结构体的格式,里面包含许多数据类型,如整形int,字符串string,带小数点decimal等等。

    如果结构体定义在Main函数中,再能在Main函数中使用,一般看情况来定义在Main函数前面,Main函数里面的所有地方都可以使用,参数前面加上public代表公用变量。

    格式:

    struct student

    {

    public int no;

    public string name;

    public int Csharp;

    public int web;

    public int database;

    public int sum;

    }

    2、用法

    1)在Main函数外面定义了一个student类型的结构体,在Main主函数中使用

    2)然后为里面的每个元素赋值,结构体名+点+结构体里面变量名称=赋值

    3)赋值之后完成之后进行打印

    Student lch=new student();//这句是在Main函数里面定义了一个名为lch的student类型的结构体。

    {

    lch.no=1;

    lch.name="李昌辉";

    lch.Csharp=88;

    lch.web=90;

    lch.database=98;

    lch.sum=lch.Csharp+lch.web+lch.database;

    }

    Console.Writeline(lch.no,lch.name,lch.Csharp,lch.web,lch.database,lch.sum);

    枚举类型

    枚举类型(enum)是值类型的一种特殊形式,它从System.Enum继承而来,并为基础类型的值提供替代名称。枚举类型有名称、基础类型和一组字段。基础类型必须是一个除char类型外的内置的有符号(或无符号)整数类型(如Byte、Int32或UInt64)。也可以说,枚举类型是一组常量的集合。

    1.定义 Enum。。。。{E}

    枚举元素默认基础类型为int。默认情况下,第一个枚举数的值为0,后面每个枚举数的值依次递增1.

    例如

    enum meiju://枚举是常量的集合,一般冒号后面不指定数据类型

    {

    one=3,//枚举里面有默认的索引,也可以指定:如索引3,但在控制台中不起作用;

    two=6,

    three,//用逗号隔开

    four=two,//如果等于之前的一个常量,那么就等于这个常量;最后一行的逗号可省略

    }

    static void Main(string[] args)

    {

    Console.WriteLine(meiju.one);

    Console.ReadLine;

    2.用法

    枚举也可以指定数据类型,一般不指定

    在定义枚举类型时,可以选择基类型,但可以使用的基类型仅限于long、int、short和byte

    }

  • 相关阅读:
    SMO学习笔记(五)——附加数据库
    SMO学习笔记(二)——还原(恢复)篇之完整恢复
    加深C# 中字符串前加@符号理解以及使用~~
    Oracle Sys用户用默认密码change_on_install 无法登录的问题(错误代码:ORA28009)
    Reflector for .NET 下载问题
    SQLSERVER拆分字符串的函数(表值函数)
    AjaxPro使用Session出错(AjaxPro "Session"引发了"System.NullReferenceException"类型的异常)
    ASP.NET Web页面(.aspx)添加用户控件(.ascx)无显示的问题
    公积金贷款与商业贷款的区别(在废打印纸中的意外收获... :))
    SMO学习笔记(三)——效验数据库备份文件
  • 原文地址:https://www.cnblogs.com/v812249389/p/4446874.html
Copyright © 2020-2023  润新知