2011-01-09 15 views
2

Ich bin nicht sicher, warum es mir jetzt entgeht, aber kann mir jemand sagen, warum so viele Strukturen mit dem Präfix TAG_ benannt sind?TAG_ Prefix auf C/C++ - Strukturen?

Wofür ist das ein Mnemonic für oder ein Akronym?

Es scheint eine gemeinsame genug Konvention in allen möglichen Umgebungen zu sein, so dass sicherlich eine Bedeutung dahinter steckt. Ich weiß, dass vieles nur "Affen kopiert" wird und die Geschichten hinter solchen Dingen gehen oft mit der Zeit verloren. Ich dachte, ich kenne die Geschichte selbst einmal, aber im Moment bin ich ahnungslos.

Eine Person vorgeschlagen, dass es für "The Actual Guts" von etwas steht, z.B. TAG_HANDLE ist der "Eingeweide" eines Griffs. Das klingelt nicht und scheint nur ein bisschen zu frivol.

Kann mir jemand dabei helfen, meine Blockade zu klären?

+0

Es ist wie ein Namespace 'NAMESPACE_MyStuff' in C++ genannt hat. – dreamlax

Antwort

3

Es ist kein Akronym, es ist nur wortwörtlich "tag". Das ist der technische Ausdruck dafür. Siehe z.B. Abschnitt 6.7.2.3 der C99-Spezifikation.

Der Begriff „Tag“ wird häufig in den Namen einfach eingebaut Verwechslung mit dem typedef Namens zu vermeiden, z.B .:

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

Klingt gut und so benutze ich es "mental". Ich hatte gerade das Gefühl, in meinem Hinterkopf herumzukriechen, dass ursprünglich mehr dahintersteckt. Danke für das maßgebliche Zitat! – Bob77

+0

Ist keine gute Lösung, um 'blah' ein Präfix oder ein Suffix hinzuzufügen? Ist es ein Typ wie die erweiterten Typen in C (size_t)? – nowox