Wiem, że jest to stara funkcja, ale czyta się ją pod numerem user defined literals, np.Dlaczego nazwy nie-podkreślenia są zarezerwowane dla implementacji dla UDL, a nie na odwrót?
return_t operator "" _a(long); // Literal operator for user-defined INTEGRAL literal
I przypomniał, że wymagana jest
wiodącym podkreślenia. (Jedynie biblioteka standardowa wolno definiować literały bez podkreślenia.) (A)
To wydaje się złamać wzór od tej pory realizacja pracował z nazwiskami underscorey i pozostawił nam te dobre, na przykład zastrzeżone do realizacji są nazwy, które
- zawierają podwójne podkreślenia
- zaczynają się od podkreślenia, po którym następuje litera
Ponadto cytat (A) jest nieco niebezpieczny w obecności reguły (2). Dlaczego więc niespójność?
Dzięki temu możemy uzyskać "naturalne" wyglądające sufiksy w standardowej bibliotece i pozostawić wyraźnie zdefiniowane przez użytkownika przyrostki jako takie. –