如何用匈牙利语的方式表示嵌套数组或结构或类?

时间:2009-07-02 10:26:06

标签: arrays data-structures hungarian-notation

我有一个包含另一个数组的数组

我会用这种方式表示吗?
伪代码:

rgrgTest = newArray(2)

如果数组包含结构,那该怎么办? 伪代码:

rggrTest = newArray(2).newStruct()

或者这种方式,即我是否要对结构的数据类型进行分类?
伪代码:

rggrlstlTest = newArray(2).newStruct(int id, str desc, int value)

1 个答案:

答案 0 :(得分:1)

“正确”的方式取决于您的编码标准和前缀列表。

前缀的顺序通常表示他们所代表的内容将以您的母语读出的顺序。

使用单字母前缀(或整数类型的单个字母+数字)来阻止名称变得无法管理,因此对于1字节无符号整数可能为'u8',对于数组为'a',对于struct为'r'(如“记录”)。

不要在前缀中包含struct的元素;这太笨拙了。

所以举一些例子:

au8My1DArray[]      // A 1-dimensional array of unsigned 1-byte integers
aau8My2dArray[][]   // A 2-dimensionnal array of unsigned 1-byte integers
arMyArray[]         // A 1-dimensional array of structs

注意:这是系统匈牙利表示法,它似乎非常不受Stack Overflow用户欢迎,但不要推迟!它在嵌入式软件中仍然很常见。

另请参阅主题的Wikipedia article