Was bedeutet "Universal Character Name Conversion" in C ++?

8

C ++ 98 hat das offensichtlich als einen der Standards für die Kompilierungsphasen. Was bedeutet es und warum wird es anfangs ausgeführt?

    
unj2 17.06.2012, 19:09
quelle

1 Antwort

8

Ein universeller Charaktername sieht wie \uFFFD oder \U0010FFFD aus. Es ist eine Methode zum Schreiben eines Zeichens in Ihren Quellcode, bei dem die Quellcodekodierung dieses Zeichen nicht enthält.

C ++ gibt an, dass Zeichen, die nicht im grundlegenden Quellzeichensatz enthalten sind, in der ersten Übersetzungsphase in universelle Zeichennamen umgewandelt werden. Der Grund dafür ist, dass universelle Charakternamen und Zeichen, die nicht im Basisquell-Zeichensatz, sondern im Quellzeichensatz enthalten sind, gleich behandelt werden.

Die as-if -Regel bedeutet, dass eine Implementierung für diese universelle Zeichenname-Übersetzung nicht erforderlich ist, solange sie erweiterte Zeichen, die als universelle Zeichennamen geschrieben wurden, identisch mit erweiterten Zeichen behandelt, die wörtlich vorkommen in der Quelle.

    
bames53 17.06.2012, 19:19
quelle