zoukankan      html  css  js  c++  java
  • 变量和常量

    变量类型

    1.值类型

             值类型变量直接存储其数据值,主要包含整数类型、浮点类型以及布尔类型等。值类型变量在堆栈中进行分配,因此效率很高,使用值类型的主要目的是为了提高性能。

    值类型有以下特性:

    a).值类型变量存储在堆栈中。

    b).访问值类型变量时,一般都是直接访问其实例。

    c).每个值类型变量都有自己的数据副本,因此对一个值类型变量的操作不会影响其他变量。

    d).复制值类型变量时,复制的是变量的值,而不是变量的地址。

    e).值类型变量不能为null,必须具有一个确定的值。

    1).整数类型

    整数类型代表一种没有小数点的整数数值。如下:

    sbyte(8位有符号整数)

    short(16位有符号整数)

    int(32位有符号整数)

    long(64位有符号整数)

    byte(8位无符号整数)

    ushort(16位无符号整数)

    uint(32位无符号整数)

    ulong(64位无符号整数)

    2).浮点类型

    浮点类型变量主要用于处理含有小数的数值数据。如下:

    float(精确到7位数)

    double(精确到15-16位数)

    3).布尔类型

     

    2.引用类型

             引用类型是构建C#应用程序的主要对象类型数据。在应用程序执行的过程中,预先定义的对象类型以new创建对象实例,并且存储在堆栈中。堆栈是一种由系统弹性配置的内存空间,没有特定大小及存活时间,因此可以被弹性地运用于对象的访问。

    引用类型具有如下特征:

    a).必须在托管堆中为引用类型变量分配内存。

    b).必须使用new关键字来创建引用类型变量。

    c).在托管堆中分配的每个对象都有与之相关联的附加成员,这些成员必须被初始化。

    d).引用类型变量是由垃圾回收机制来管理的。

    e).多个引用类型变量可以引用同一个对象这种情形下,对一个变量的操作会影响另一个变量所引用的同一个对象。

    f).引用类型被赋值前的值都是null。

    注:所有被称为“类”的都是引用类型,主要包括类、接口、数组和委托。

     

    3.值类型与引用类型的区别

    1).从概念上看,值类型直接存储其值,而引用类型存储对其值的引用。

    2).从内存空间上看,值类型是在栈中操作,而引用类型则在堆中分配存储单元。

     

    4.枚举类型

    enum 枚举名

    {

    list1=value1,

    list2=value2,

    list3=value3,

    }

    注:定义枚举类型时,如果不对其进行赋值,默认情况下,第一个枚举数的值为0,后面每个枚举数的值依次递增1。

     

    常量

             常量就是其值固定不变的量,而且常量的值在编译时就已经确定了。常量的类型只能为下列类型之一:sbyte、byte、short、ushort、int、uint、long、ulong、char、float、double、decimal、bool、string等。使用关键字const来创建常量,并且在创建常量时必须设置它的初始值。常量就相当于每个公民的身份证号,一旦设置就不允许修改。

             const double PI = 3.1415926

    《C#从入门到精通》读后总结

  • 相关阅读:
    Python中所有的关键字
    关于selenium的8种元素定位
    对提示框的操作
    selenium+webservice进行百度登录
    MISCONF Redis is configured to save RDB snapshots, but is currently not able to persist on disk. Commands that may modify the data set are disabled...报错解决
    Vue中使用echarts
    npm WARN deprecated request@2.88.2: request has been deprecated, see https://github.com/request/request/issues/3142解决方法
    插入排序
    冒泡排序优化
    roject 'org.springframework.boot:spring-boot-starter-parent:XXX' not found 解决
  • 原文地址:https://www.cnblogs.com/hmliang/p/5232753.html
Copyright © 2011-2022 走看看