【学习资料】

  《C#图解教程》(第6章):https://www.cnblogs.com/moonache/p/7687551.html
  电子书下载:https://pan.baidu.com/s/1mhOmBG0

【内容】

    • const
    • readonly
    • static readonly
    • 三者比较

【笔记】

  • const

    • 编译时常量
    • 类的常量
    • 只能在声明时赋值
  • readonly
    • 运行时常量
    • 对象的常量
    • 可以在 声明时 赋值(与常量一样),或 构造函数中 赋值
  • static readonly
    • 运行时静态常量
    • 类的常量
    • 可以在 声明时 赋值(与常量一样),或 静态构造函数中 赋值
  • public class Person
    {
    public const int a1 = ; // const
    public readonly int a2 = ; // readonly
    public static readonly int a3 = ; // static readonly // 静态构造函数
    static Person()
    {
    //a1 = 1; // 错误
    //a2 = 2; // 错误
    a3 = ; // 正确
    }
    // 构造函数
    public Person()
    {
    //a1 = 1; // 错误
    a2 = ; // 正确
    //a3 = 3; // 错误
    }
    }
  •  三者区别

    • const     :编译时常量,效率最高
    • readonly:运行时常量,可以在运行时根据环境确定常量值,比较灵活

【Unity|C#】基础篇(6)——const、readonly、static readonly的更多相关文章

  1. 到底是 const 还是 static readonly

    真的一样? const 和 static readonly 常在程序中用来声明常量,调用方法也没有什么不同,他们真的一样吗?我们可以做个试验. 程序集内的常量 现在我们建立一个程序,里面有一个MyCl ...

  2. 【转】const和static readonly

    我们都知道,const和static readonly的确很像:通过类名而不是对象名进行访问,在程序中只读等等.在多数情况下可以混用.二者本质的区别在于,const的值是在编译期间确定的,因此只能在声 ...

  3. (C#) What is the difference between "const" and "static readonly" ?

    const int a must be initialized initialization must be at compile time readonly int a can use defaul ...

  4. const 还是 static readonly

    到底是 const 还是 static readonly   真的一样? const 和 static readonly 常在程序中用来声明常量,调用方法也没有什么不同,他们真的一样吗?我们可以做个试 ...

  5. const和static readonly的区别

    我们都知道,const和static readonly的确很像:通过类名而不是对象名进行访问,在程序中只读等等. 在多数情况下可以混用.二者本质的区别在于,const的值是在编译期间确定的,因此只能在 ...

  6. C# const和static readonly区别

    [转]C# const和static readonly区别 以前只是知道Const和static readonlyd的区别在于const的值是在编译期间确定的,而static readonly是在运行 ...

  7. Unity C# const与static readonly的区别与联系

    using System; namespace Test { class MainClass { //懒人写法的单例 class Weapon { public static readonly Wea ...

  8. const和static readonly 区别

    const的值是在编译期间确定的,因此只能在声明时通过常量表达式指定其值. 而static readonly是在运行时计算出其值的,所以还可以通过静态构造函数来赋值. static readonly ...

  9. c#中const、static、readonly的区别

    1. const与readonly const ,其修饰的字段只能在自身声明时初始化. Readonly 是只读变量,属于运行时变量,可以在类初始化的时候改变它的值.该类型的字段,可以在声明或构造函数 ...

随机推荐

  1. Bilibili手机端下载的Download文件批量转换为MP4软件【Bilibili_DownVideoToMp4】原创发布

    Bilibili手机端下载的Download文件批量转换为MP4软件[Bilibili_DownVideoToMp4]原创发布 起因 Bilibili手机端的视频下载下来只能在手机上看,手机屏幕太小看 ...

  2. JS笔记之第一天

    JavaScript:简称JS JS的原名不是JavaScript,而是LiveScript JS分为三个部分 1.ECMAScript  标准→JS的基本的语法 2.DOM——Document Ob ...

  3. Java高级项目实战之CRM系统01:CRM系统概念和分类、企业项目开发流程

    1. CRM系统介绍 CRM系统即客户关系管理系统, 顾名思义就是管理公司与客户之间的关系. 是一种以"客户关系一对一理论"为基础,旨在改善企业与客户之间关系的新型管理机制.客户关 ...

  4. C++中用vector定义矩阵

    熟悉c风格的矩阵定义,那么用纯c++特性vector如何定义一个矩阵呢? # include<vector> # include <iostream> int main() { ...

  5. Java求素数和

    描述 从键盘任意输入两个整数m,n,编程计算并输出m~n之间的所有素数之和. 输入 在一行上输出m和n. 输出 m和n之间(包括m和n)的素数的和 难度 一般 输入示例 2 5 输出示例 10 完成代 ...

  6. 忽略npm install安装失败信息

    在package.json目录下运行npm install命令时会提示某些模块安装失败,如下图所示:   不管你在.npmrc文件中设置了proxy.https-proxy和registry地址,它还 ...

  7. python multiprocessing 耗内存问题

    multiprocessing在每创建一个进程时,会将主进程的内存空间原封不动的复制一份到子进程,这样一来内存消耗很容易就翻几倍,导致程序无法运行. 究其原因,是启动进程时采用了os.fork(),使 ...

  8. [Python]爬取首都之窗百姓信件网址id python 2020.2.13

    经人提醒忘记发网址id的爬取过程了, http://www.beijing.gov.cn/hudong/hdjl/com.web.consult.consultDetail.flow?original ...

  9. 【剑指Offer】04、重建二叉树

    题目描述 输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树.假设输入的前序遍历和中序遍历的结果中都不含重复的数字.例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7, ...

  10. Sentence by defender

    也许,人在旅途,不是你看清了多少事,而是你看轻了多少事.