Dragon in the sky

whatever happened , go ahead! Happy life of big pig and its dog.
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

Static, const, readyonly 辨析[转载]

Posted on 2009-08-19 17:04  龙泰  阅读(302)  评论(0编辑  收藏  举报
1、static 表示被修饰的对象的生命周期与当前的应用程序域相同,因此可以在多个实例中共享
const和readonly是c#声明常量的两种方式,它们间的区别如下:
2、const表示常量且只能在声明时赋值,因此const的常量在编译时就能确定,它如果没有被static修饰并不能在多个实例中共享(通常static会和const一起使用以作为标志位来用,但不是必须的)
3、readonly只能用来修饰成员字段,且它所修饰的字段可以在声明时和构造函数中赋值且在构造函数结束后就不能再赋值,因此它在运行时确定

http://social.microsoft.com/Forums/zh-CN/visualcshartzhchs/thread/1934914e-5dc1-4eb8-8bd4-a127c4f3ad19