C / C ++结构上的TAG_前缀?

时间:2011-01-09 22:41:59

标签: c naming-conventions

我不知道为什么它现在逃脱了我,但是有人能告诉我为什么这么多结构用TAG_前缀命名?

这是一个助记符,或者是首字母缩略词?

它似乎是各种环境中常见的惯例,所以它背后肯定有一个意义。我知道很多只是“复制猴子”,这些事情背后的传说经常会随着时间的推移而丢失。我以为自己曾经知道这个故事,但现在我一无所知。

有人建议它代表某些东西的“实际胆量”,例如: TAG_HANDLE是手柄的“胆量”。这不响铃,但看起来有点过于轻浮了。

任何人都可以帮助清除我的心理障碍吗?

1 个答案:

答案 0 :(得分:3)

它不是首字母缩略词,它只是字面意思“标记”。这是它的技术术语。参见例如C99规范第6.7.2.3节

术语“标记”通常包含在名称中,只是为了避免与typedef名称混淆,例如:

typedef struct tag_blah
{
    ...
} blah;