public class MyClass { public const Decimal CONSTANT = 0.50; // ERROR CS0664 }
выдает следующую ошибку:
ошибка CS0664: литерал типа double не может быть неявно преобразован в тип "десятичный"; используйте суффикс 'M' для создания литерала этого типа
, как задокументировано . Но это работает:
public class MyClass { public const Decimal CONSTANT = 50; // OK }
И мне интересно, почему они запрещают первое. Мне это кажется странным.