在oCn?规则是什么?
using(SqlConnection oCn = new SqlConnection(
"Server=(local);Database=Pubs;User ID=TestUser1;Password=foo1;")) {
oCn.Open();
...
}我在这篇文章http://msdn.microsoft.com/en-us/magazine/cc163799.aspx中找到了这种命名类型
发布于 2011-02-24 04:10:31
一种完全过时的说法,即"Cn“是一个*o*宾语。
发布于 2011-02-24 04:11:29
我担心它是某个对象的某个hungarian dialect notation的剩余部分。
在C#和.NET中,我认为这是无用的。
编辑,我认为包含类型和/或作用域信息的匈牙利符号在C#中没有用处。I do like Apps Hungarian notation
发布于 2011-02-24 04:31:50
在本例中,"o“表示对象。这是一种尝试使用匈牙利符号的“系统”变体。
匈牙利语有两种类型:Systems and Apps。系统使用前缀来标识存储的数据类型。例如,iCounter中的"i“表示变量是一个整数。
应用程序匈牙利人采取了完全不同的方法,并指定前缀应该指示数据的目的。例如,rwPosition中的"rw“表示行。
windows api使用的是系统匈牙利语。这导致了大量其他程序员也在使用它。不幸的是,当对api进行更改时,即使实际数据类型发生更改,它们也会保留旧的变量名。这导致了对于给定API函数的参数应该传递什么数据类型的大量混淆。尤其是在各种把手周围。
在.Net编码指南中,MS explicitly states that hungarian shouldn't be used。现实是,他们谈论的是“系统”匈牙利语;这一点我100%同意。另一方面,"Apps“匈牙利语有大量的用途,因为你描述的是数据,而不是类型。
在一天结束时,只要去掉"o“就行了。它不会给程序增加任何东西。
哦,对于有趣的阅读,请查看Joel对此的看法:http://www.joelonsoftware.com/articles/Wrong.html
https://stackoverflow.com/questions/5096453
复制相似问题