TAG_ Префикс на C / C ++ структурирует? - PullRequest
2 голосов
/ 10 января 2011

Я не уверен, почему это ускользает от меня сейчас, но кто-нибудь может сказать мне, почему так много структур названы с префиксом TAG_?

Для чего это мнемоника или сокращение?

Кажется, это достаточно распространенное соглашение для всех типов сред, поэтому, несомненно, в этом есть смысл.Я знаю, что многие просто «копируются обезьяной», и знания, стоящие за такими вещами, часто теряются со временем.Я думал, что однажды узнал эту историю сам, но сейчас я ничего не понимаю.

Один человек предположил, что это означает «Фактические смелости» чего-то, например, TAG_HANDLE - «внутренности» ручки.Это не звонит в колокольчик и кажется слишком легкомысленным.

Может ли кто-нибудь помочь мне в этом разобраться?

1 Ответ

3 голосов
/ 10 января 2011

Это не аббревиатура, это буквально «тег». Это технический термин для этого. Смотрите, например раздел 6.7.2.3 спецификации C99

Термин «тег» часто включается в имя просто для того, чтобы избежать путаницы с именем typedef, например ::

typedef struct tag_blah
{
    ...
} blah;
...