предупреждение: количество сдвигов влево> = ширина типа

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

public static string ToTitleCase(this string mText)
{
    if (mText == null) return mText;

    System.Globalization.CultureInfo cultureInfo = System.Threading.Thread.CurrentThread.CurrentCulture;
    System.Globalization.TextInfo textInfo = cultureInfo.TextInfo;

    // TextInfo.ToTitleCase only operates on the string if is all lower case, otherwise it returns the string unchanged.
    return textInfo.ToTitleCase(mText.ToLower());
}
53
задан Mateusz Piotrowski 13 August 2016 в 05:27
поделиться

1 ответ

Принятое решение хорошо для [постоянного] ULL< < 32, но отрицательный результат для существующих переменных - например, [переменной] < < 32. Полное решение для переменных: ((неподписанный длинный длинный) [переменная] < < 32). В стороне: Мое личное мнение об этом предупреждении - то, что это совершенно не нужно во-первых. Компилятор видит то, что тип данных получения является и знает ширину параметров из определений в заголовках или постоянных величинах. Я полагаю, что Apple могла сделать компилятор лязга немного более интеллектуальным, чем она расценивает это предупреждение.

0
ответ дан 7 November 2019 в 08:42
поделиться
Другие вопросы по тегам:

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