C / C ++数据成员/对象的前缀

时间:2010-06-25 04:16:21

标签: pointers naming-conventions prefix

我最近越来越多地参与 C / C ++编程,并注意到人们在代码中命名数据类型的方式趋势。

我总是看到诸如p,m,ui等前缀

例如:mPlayerNames,pData,uiNumResets

我想我明白了,但只是为了确认:这些前缀是否表示数据类型?即:
mData - >矩阵(数组)数据
pData - >指向数据的指针 uiData - > unsigned int数据
等...

这是对的吗?

3 个答案:

答案 0 :(得分:2)

m - member of a class
p - pointer
ui - unsigned int
lpsz - long pointer string zero terminated (whew!)

我个人只使用'm'和'p'。在我看来,其余的只是滑稽。它使得代码难以破译。

我对这个人的代码进行了维护工作,他们在代码中的每个变量,函数和其他标识符上使用半匈牙利表示法类型id前缀。他大肆使用$符号来分隔单词。很难控制杀气腾腾的愤怒。

答案 1 :(得分:1)

这通常称为Hungarian notation

这些前缀并没有什么特别之处 - 它们可能因语言,平台和编程商店而异。

是的,你的解释可能是正确的 - p和ui是常见的,你必须检查你的环境中是否真的指的是Matrix,尽管它可能指的是一个类成员。

答案 2 :(得分:0)

是的,你的方式是正确的

此链接提供有关匈牙利表示法的更多详细信息 http://en.wikipedia.org/wiki/Hungarian_notation