C# 一行中的单个声明和多个声明之间有什么区别?
我想知道这两种声明变量的方法之间的区别 类型1C# 一行中的单个声明和多个声明之间有什么区别?,c#,C#,我想知道这两种声明变量的方法之间的区别 类型1 private string procedure_add = ""; private string procedure_update = ""; private string procedure_delete = ""; 类型2 private string procedure_add = "", procedure_update = "", procedure_delete = ""; 这会产生同样的效果吗?。内存消耗是否相同 没有任何区别。
private string procedure_add = "";
private string procedure_update = "";
private string procedure_delete = "";
类型2
private string procedure_add = "", procedure_update = "", procedure_delete = "";
这会产生同样的效果吗?。内存消耗是否相同 没有任何区别。只是编码风格 编辑 正如第一种情况中所述,您可以修改可访问性。 从代码生成的角度来看,这两个版本生成的代码完全相同
IL
MyClass..ctor:
IL_0000: ldarg.0
IL_0001: ldstr ""
IL_0006: stfld UserQuery+MyClass.procedure_add
IL_000B: ldarg.0
IL_000C: ldstr ""
IL_0011: stfld UserQuery+MyClass.procedure_update
IL_0016: ldarg.0
IL_0017: ldstr ""
IL_001C: stfld UserQuery+MyClass.procedure_delete
IL_0021: ldarg.0
IL_0022: call System.Object..ctor
IL_0027: ret
没有任何区别。只是编码风格 编辑 正如第一种情况中所述,您可以修改可访问性。 从代码生成的角度来看,这两个版本生成的代码完全相同
IL
MyClass..ctor:
IL_0000: ldarg.0
IL_0001: ldstr ""
IL_0006: stfld UserQuery+MyClass.procedure_add
IL_000B: ldarg.0
IL_000C: ldstr ""
IL_0011: stfld UserQuery+MyClass.procedure_update
IL_0016: ldarg.0
IL_0017: ldstr ""
IL_001C: stfld UserQuery+MyClass.procedure_delete
IL_0021: ldarg.0
IL_0022: call System.Object..ctor
IL_0027: ret
没什么区别,那只是一张速记 没有区别,那只是一个简写 我认为没有什么不同,从我的理解来看,第二种类型是最小化代码行。我认为没有什么不同,从我的理解来看,第二种类型是最小化代码行。没有任何区别。这都是关于可访问性。代码的外观。 假设您有10000多行代码,在编辑时,您可能会被标识声明中的“,”而难倒
private string yourVar = String.Empty;
没有任何区别。这都是关于可访问性。代码的外观。 假设您有10000多行代码,在编辑时,您可能会被标识声明中的“,”而难倒
private string yourVar = String.Empty;
除了总体上的“它们相同,但可读性不同”之外,我想补充三点意见:
Dim x中,y作为整数
将导致y是整数,x是变量int*ip中,i代码>将导致ip是指向int的指针,而i是int的指针
int*ip中,i代码>将导致ip是指向int的指针,而i也是指向int的指针
除了总体上的“它们相同,但可读性不同”之外,我想补充三点意见:
Dim x中,y作为整数
将导致y是整数,x是变量int*ip中,i代码>将导致ip是指向int的指针,而i是int的指针
int*ip中,i代码>将导致ip是指向int的指针,而i也是指向int的指针
确切地但是,使用单行可以精确地修改辅助功能。但是,使用单行可以修改可访问性。我建议您使用
string.Empty
而不是”
。这应该在有关编程的各种书籍中进行解释。你可以在SOThanks all上查看这里@Serge string.Empty和“”有什么不同?@Sagotharan,下面是答案:。长话短说,出于可读性的原因。@Serge:对,我发现“
比字符串更可读。Empty
我建议您使用字符串。Empty
而不是”
。这应该在有关编程的各种书籍中加以解释。你可以在SOThanks all上查看这里@Serge string.Empty和“”有什么不同?@Sagotharan,下面是答案:。长话短说,因为可读性的原因。@Serge:对,我发现“
比字符串更可读。空的+1谢谢你的即时回答。扩展你的答案,它会更有帮助。+1感谢你的即时回答。扩大你的答案,它会更有帮助。