黑马程序员技术交流社区

标题: const和readonly有什么区别? [打印本页]

作者: 黑马-金鑫    时间: 2012-9-6 11:52
标题: const和readonly有什么区别?
本帖最后由 黑马-金鑫 于 2012-9-6 12:39 编辑

const和readonly有什么区别?
作者: 徐宏伟    时间: 2012-9-6 11:57
http://bbs.itheima.com/forum.php ... ;pre_pos=1&ext=


这个回答的比较好,借给你了!!!
作者: 黑马-金鑫    时间: 2012-9-6 12:36
徐宏伟 发表于 2012-9-6 11:57
http://bbs.itheima.com/forum.php?mod=viewthread&tid=3020&reltid=7457&pre_thread_id=24990&pre_pos=1&e ...

嗯嗯  谢谢这位仁兄{:3_64:}
作者: 许庭洲    时间: 2012-9-6 12:55
1 . const常量。常量名要大写。
2.  const常量语法要求一定不会变化的值才能声明为常量;
3. readonly是ASP.net控件的属性;
4. readonly=true,表明该控件在前台显示并能修改数据,若 readonly=false,表明该控件在前台不能修改。
作者: 黑马-金鑫    时间: 2012-9-6 12:58
许庭洲 发表于 2012-9-6 12:55
1 . const常量。常量名要大写。
2.  const常量语法要求一定不会变化的值才能声明为常量;
3. readonly是ASP ...

又长知识了,{:3_64:}
作者: xwh    时间: 2012-9-6 17:24
1.const、readonly和static readonly定义的常量,指定初始值后(包括在构造函数内指定的初始值) 将不可更改,可读不可写;
2.const定义时必须指定初始值,而readonly定义时可以不进行初始化(MS建议在定义时初始值),同时也可以在构造函数内指定初始值, 并以构造函数内指定的值为准;
3.const和static readonly定义的常量是静态的,只能由类直接访问;而readonly定义的常量是非静态 的,只能由实例对象访问;  
4.static readonly常量,如果在构造函数内指定初始值,则必须是静态无参构造函数;
5.const是编译时常量,readonly是运行时常量;cosnt较高效,readonly较灵活。在应用上以static readonly代替const,以平衡const在灵活性上的不足,同时克服编译器优化cosnt性能,所带来的程序集引用不一致问题;  
      






欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2