Есть ли у локали аспект, который определяет отрицательный символ? - PullRequest
0 голосов
/ 03 мая 2018

Я ожидал, что фасет numpunct будет содержать информацию о символе, который будет использоваться для отрицательного символа.

Могу ли я найти эту информацию где-нибудь еще в локали, или я просто должен предположить, что она всегда '-'?

1 Ответ

0 голосов
/ 03 мая 2018

Если мы посмотрим на num_put::put для showpos, то будет указано

Для целочисленных типов и типов с плавающей запятой, если задано showpos, добавляется модификатор +

Так что это заставляет меня поверить, что + всегда будет использоваться для представления положительного числа

Дополнительно [locale.numpunct] / 2 имеет

integer   ::= [sign] units
sign      ::= plusminus
plusminus ::= '+' | '-'

То, что я интерпретирую как значение, оно всегда будет использовать - для отрицательного числа и +, если оно положительное и showpos равно true. Если бы это было не так, я бы ожидал, что это будет похоже на

integer   ::= [sign] units
sign      ::= plusminus
plusminus ::= plus | minus
...