c# - 常量字段或获取属性

标签 c#

第一个和第二个定义有什么区别?

//1
private static string Mask
{
   get { return "some text"; }
}

//2 
private const string Mask  = "some text"; 

第一种和第二种方法有哪些好处?

最佳答案

只要它们是私有(private)的,它们可能会被优化为或多或少相同的代码。如果它们是公开的并从其他程序集中使用,那就是另一回事了。

const 变量将使用 const 表达式替换/内联到其他程序集中。这意味着如果更改表达式,则需要使用 const 表达式重新编译每个程序集。另一方面,每次使用属性解决方案都会给您带来方法调用开销。

关于c# - 常量字段或获取属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7023590/

相关文章:

c# - 如何在只有一个数据库查询的情况下在计数器字段上执行 +1?

c# - OLEDB 日期(时间)问题 asp.net c#

c# - C# 中的音频捕获

c# - MVC 从缓存或旧数据库中提取数据

c# - 为什么这个结构是可变的?什么时候可以接受可变结构?

c# - 在 C# 中,task.oncomplete 是做什么的?

c# - 如何将串行数据流保存到sql数据库

c# - 如何读取 Id3v2 标签

c# - 如何在 GridView 中获取单元格值(不使用单元格索引)

c# - HttpWebRequest 无法通过代理连接?