zoukankan
html css js c++ java
const常量和static静态只读变量有何区别
/**/
/*
--===------------------------------------------===---
作者:许明会
日期:2008年1月14日 9:59:52
目的:可以通过程序集引用const常量和static静态成员
--===------------------------------------------===---
*/
using
System;
namespace
xumh
{
public
class
runMyApp
{
static
void
Main()
{
myClass test
=
new
myClass();
Console.WriteLine(
"
半径为5.0的圆的面积为:{0}
"
,test.CircleArea(
5.0
));
Console.WriteLine(
"
程序的当前版本是:{0}.
"
,test.GetVersion());
Console.WriteLine(
"
public const double PI:{0}
"
, myClass.VERSION );
//
Console.WriteLine("", test.PI);
Console.WriteLine(
"
public static readonly string VERSION:{0}
"
, myClass.PI);
}
}
}
/**/
/*
--===------------------------------------------===---
半径为5.0的圆的面积为:78.5
程序的当前版本是:2.18.
public const double PI:2.18
public static readonly string VERSION:3.14
--===------------------------------------------===---
*/
/**/
/*
--===------------------------------------------===---
作者:许明会
日期:2008年1月14日 8:54:48
目的:static变量和const变量有何区别?
环境:Windows Server 2003 + NetFramework3.5
编译方法:csc /t:library static.cs
--===------------------------------------------===---
*/
using
System;
namespace
xumh
{
public
class
myClass
{
public
const
double
PI
=
3.14
;
public
double
CircleArea(
double
r)
{
return
PI
*
r
*
r;
}
public
static
readonly
string
VERSION
=
"
2.18
"
;
public
string
GetVersion()
{
return
VERSION;
}
}
}
/**/
/*
--===------------------------------------------===---
相同点:
常量符号属于类名,和static静态变量一样,通过类名引用。
不同点:
在方法的内部:const常量符号将直接用其值替代,static静态变量保留符号。
我的思考:既然const常量能保留符号,为什么在方法内却用常量值替代符号呢,难道是性能考虑;
反过来想,含有const常量的程序集修改后必然需要编译,
那么引用程序集的部分自然不用修改(不存在整站编译),而含有const的程序集的性能又提升了,倒是好事了。
--===------------------------------------------===---
*/
查看全文
相关阅读:
Linux写时拷贝技术(copy-on-write)
crontab使用进程锁解决冲突
Better Linux Disk Caching & Performance with vm.dirty_ratio & vm.dirty_background_ratio
精确度量Linux下进程占用多少内存的方法
在Linux系统的服务器上使用Memtester进行内存压力测试
How to speed up insertion performance in PostgreSQL
Mongo的备份和恢复(mongodump 和mongorestore )
MongoDB:删除操作
MongoDB插入数据的3种方法
Centos 软连接和硬链接
原文地址:https://www.cnblogs.com/flaaash/p/1037863.html
最新文章
mysql 子查询 合并查询
mysql数据库进阶
mysql数据库常用命令入门
get 传中文,可以通过下面这种方式
spring mvc使用@InitBinder 标签对表单数据绑定
spring+mybatis+shiro入门实例
使用Spring AOP 实现日志管理(简单教程)
mybatis generator 使用教程(生成带注释的实体类)
使用tomcat的jndi方式连接mysql的字符编码设置
docker修改默认存储位置
热门文章
docker hub加速访问设置
docker报错:Failed to restart docker.service: Unit not found.
快速部署docker
ubantu/centos修改系统时间
jenkins添加类ubuntu/centos节点报错
jenkins命令行修改时间
centos/linux/ubuntu在局域网上网
ubuntu的磁盘扩容
Coverity代码扫描工具
linux下生成core dump文件方法及设置
Copyright © 2011-2022 走看看