Нуль в начале означает, что цифры обрабатываются как восьмеричные:
так что, например. >07 не скомпилируется.
Код: Выделить всё
std::array tx_tech_variable_dates_vec_two{{ { 2032, 05 },{ 2026, 06 },{ 2052, 09 },{ 2052, 08 } }};
Есть ли какой-нибудь способ убедиться, что 05, 09,... и т. д. обрабатываются как десятичные числа без преобразования в символ или что-то в этом роде? Я бы хотел, чтобы они рассматривались как двойные/целые числа в десятичной записи, чтобы я мог без проблем добавить 08,... 12. И без необходимости преобразовывать и обратно преобразовывать значения в десятичные/символьные/что угодно позволяет избежать этой интерпретации лидирующего нулевого восьмерично-литерального значения.
Обновление: причина сделать это заключается в том, что в коде ( более 90 тыс. строк кода) используется тип DATE, в котором используется это обозначение с ведущими нулями. Поэтому я хочу оставаться состоявшимся. И очевидно, что дата должна идти на 12, а не на 8.
Подробнее здесь:
https://stackoverflow.com/questions/785 ... ng-the-val