Что обозначает M в Десятичной литеральной нотации C#?

Используйте регулярное выражение:.

Match m = Regex.Match(text, @"(.+? .+?) ");
if (m.Success) {
    do_something_with(m.Groups[1].Value);
}
278
задан Igby Largeman 18 April 2012 в 08:11
поделиться

3 ответа

Это означает, что это десятичный литерал, как говорили другие. Однако происхождение, вероятно, не из тех, что предлагаются в другом месте в этом ответе. Из аннотированного стандарта C # (версия ECMA, а не версия MS):

Десятичный суффикс - M / m, поскольку D / d уже был взят дублером . Хотя предполагалось, что M означает деньги, - вспоминает Питер Голд. что M был выбран просто как следующий лучшая буква в десятичном .

В аналогичной аннотации упоминается, что ранние версии C # включали «Y» и «S» для байтовых и коротких литералов соответственно. От них отказались на том основании, что они не очень часто используются.

353
ответ дан 23 November 2019 в 02:05
поделиться

Вероятно, это деньги.

-13
ответ дан 23 November 2019 в 02:05
поделиться

M означает десятичное число. Если вы не добавите его, число будет считаться двойным. D - двойной.

14
ответ дан 23 November 2019 в 02:05
поделиться
Другие вопросы по тегам:

Похожие вопросы: