c# 中 const 与 readonly 关键字看似相同,实则不同。重点在于确定值的时间。

const

const 很简单,就是一个常量,不可以被 static 修饰,因为被 const 修饰的字段自动成为静态字段,其值是在编译时可以确定的。

readonly

readonly 可以修饰实例字段(不被 static 修饰的字段),也可以修饰静态字段(被 static 修饰的字段)。意指为“只读”。其值确定的时间在类的构造函数中。

总结

关键字 确定值的时机
const 编译时
readonly 调用构造函数时

转载于:https://www.cnblogs.com/night-ride-depart/p/6024710.html

[c#] const 与 readonly相关推荐

  1. const与readonly,析构函数,虚拟方法

    const 与readonly    const 关键字用于修改字段或局部变量的声明.它指定字段或局部变量的值不能被修改.常数声明引入给定类型的一个或多个常数.     常数声明可以声明多个常数,例如 ...

  2. const和readonly内部区别

    const和readonly关键字也是面试中经常考到的问题,通常都是用来表示一个不可变的变量成员,那么具体区别是什么?从用法上说,const只能以inline代码的形式定义,而readonly既可以以 ...

  3. const和readonly

    说道定义的变量不容修改的问题,不得不说起C#中还有一个readonly关键字,也是使用在字段上定义不容修改的值,但是const和readonly有几个区别,             区别1)   在语 ...

  4. 20100422.C#.const VS readonly

    const和readonly这对"顽固"的兄弟着实会让我这样的菜鸟迷惑. 研究了一番算是有所感悟了. const常量在编译时就会确定值,编译器直接进行值replace,就像是C语言 ...

  5. C# 总结const、 readonly、 static三者区别:

    总结const. readonly. static三者区别: (有人问我,看似简单,我也没能立刻回答出来,总结一下,分享一下.) const:静态常量,也称编译时常量(compile-time con ...

  6. 如何在 C# 中使用 const,readonly,static

    平时在开发时经常会用到 const,readonly,static 关键字,可以肯定这些关键词是完全不同的概念,但有时候他们在用法上很相似以至于在场景中不知道选择哪一个,这篇文章我们就来讨论 C# 中 ...

  7. const 和readonly

    原文:http://www.cnblogs.com/royenhome/archive/2010/05/22/1741592.html 关于 const和readonly修饰符之间的区别,要牵涉到C# ...

  8. C#中const和readonly的区别

    C#引入了readonly修饰符来表示只读域,const来表示不变常量.顾名思义对只读域不能进行写操作,不变常量不能被修改,这两者到底有什么区别呢?只读域只能在初始化--声明初始化或构造器初始化--的 ...

  9. c# const与readonly 关键字的比较

    C#中,const 与readonly是两个比较有用的关键字.const 与 readonly 定义的数据成员在初始化都不能再改变. 比如定义了 public class MathUtitlity { ...

  10. C# const与readonly的用法和区别解析(转)

    总结一下const和readonly: 1.const和readonly的值一旦初始化则都不再可以改写: 2.const只能在声明时初始化:readonly既可以在声明时初始化也可以在构造器中初始化: ...

最新文章

  1. Docker镜像优化
  2. kettle-核心概念
  3. 百度智能云大数据全景架构图如何赋能企业数字化
  4. Go Web:URLs
  5. 冒险岛sf发布网广告_魔域sf游戏怎么选择合适又放心的服务器?
  6. C语言模拟实现标准库函数之strchr()
  7. 有关OPenCV的几个库函数的使用
  8. 基于Linux的嵌入式文件系统构建与设计
  9. 常见掌握类库与工具体系图 艾提拉总结 Atitit 文档资料处理重要类库与工具体系树 Configuration yml xml jsoup  Net apache commons net
  10. Linux---带你区分根目录 和 家目录
  11. 如何避免谷歌GMC广告被封,被封后又如何解封呢?
  12. 嗅探器c语言源码,C语言嗅探器
  13. php审批流设计思路,审批流设计器-字段说明
  14. 理解和解决requireJS的报错:MODULE NAME HAS NOT BEEN LOADED YET FOR CONTEXT
  15. python金融分析小知识(6)——偏度与峰度的计算
  16. 总结解决 No suitable driver found for jdbc:mysql//localhost:3306/ 问题的解决方案,各种情况都已囊括,希望可以帮助到有需要的各位
  17. python转xlsx为xls 或重新保存xls
  18. vue通过子组件修改父组件prop的几种实现方式
  19. python scipy.optimize 非线性规划 求解局部最优和全局最优
  20. 名单公布!支持这些高校,冲“双一流”

热门文章

  1. Linux、UNIX下磁带机的管理和使用
  2. 移民火星住哪?盖房的事就交给AI机器人Justin吧
  3. 少年,这有套《街霸2》AI速成心法,想传授于你……
  4. 《高效能程序员的修炼》一第2章 把一堆烂事搞定的艺术
  5. 开启3389常用终端命令
  6. django 接收ajax请求
  7. Unable to run Kiwi tests on iOS8 device
  8. 【数据结构】栈的编写以及栈的简单应用
  9. 三层交换和二层交换之间的端口聚合
  10. 前端框架VUE的基础使用