C/C++ 的前缀数据成员/对象
最近,我越来越多地参与 C/C++ 编程,并注意到人们在代码中命名数据类型的方式出现了趋势。
我总是看到 p、m、ui 等前缀。
例如:mPlayerNames、pData、uiNumResets
我想我明白了,但只是为了确认:这些前缀是否表示数据类型?即:
mData->数据矩阵(数组)
pData->指向数据的指针
uiData->无符号整型数据
等等...
这是正确的吗?
I've been getting more and more involved in C/C++ programming lately and have noticed a trend in the way people name datatypes in their code.
I always see prefixes such as p, m, ui, etc.
For example: mPlayerNames, pData, uiNumResets
I think I get it, but just to confirm: Do these prefixes indicate the data type? i.e.:
mData -> Matrix (array) of Data
pData -> pointer to Data
uiData -> unsigned int Data
etc...
Is this correct?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
我个人只使用“m”和“p”。在我看来,其余的都是滑稽的。这使得代码非常难以破译。
我对这个人的代码进行了维护工作,他在代码中的每个变量、函数和其他标识符上使用了半匈牙利表示法类型 id 前缀。他大量使用 $ 符号来分隔单词。很难抑制住杀气。
I personally only use the 'm' and the 'p'. The rest is just zany in my view. It makes the code so darn hard to decipher.
I did maintenance work on this guy's code who used semi-Hungarian notation type id prefixes on every variable, function, and other identifier in the code. He used $ signs liberally to separate words. It was hard to keep the murderous rage in check.
这通常称为匈牙利表示法。
前缀并不是一成不变的——它们可能会因语言、平台和编程商店的不同而有所不同。
是的,您的解释可能是正确的 - p 和 ui 很常见,您必须检查 m 是否确实指的是您环境中的 Matrix,尽管它可能指的是类成员。
This is generally known as Hungarian notation.
There's nothing ironclad about the prefixes - they may vary among languages and platforms and programming shops.
And yes, your interpretations are probably correct - p and ui are common, and you'd have to check to see that m really is referring to Matrix in your environment, although it may refer to a class member.
是的,您是正确的。
此链接为您提供有关匈牙利表示法的更多详细信息
http://en.wikipedia.org/wiki/Hungarian_notation
Yes you are in a way correct
This link provides you more details on the Hungarian notation
http://en.wikipedia.org/wiki/Hungarian_notation