Предположим, я хочу создать псевдоним типа на C #, используя гипотетический синтаксис:
Currency = float;
Затем я ухожу и создаю несколько тысяч файлов, в которых используется Currency
] тип.
Затем я понимаю, что предпочитаю использовать типы FCL:
Currency = System.Single;
Отлично, весь код по-прежнему работает.
... месяцев спустя ...
Подождите, у меня странные ошибки округления. Вот почему System.Single
имеет только 7 цифр точности . Допустим до 15 цифр:
Currency = System.Double;
... годы спустя ...
Оххх, с плавающей точкой неточно; умножение 0,0011 $ / единица * 217 384 единицы
обнаруживает некоторые ограничения использования чисел с плавающей запятой. А бухгалтеры - сторонники «нарушений в бухгалтерском учете». Нет проблем:
Currency = System.Decimal;
... лет спустя ...
Международные заявки? Коды валют. Хмммм. Спасибо CodeProject :
Currency = Money;
... позже ...
Ооо, шаблоны и практики. Давайте запутаем часть этого кода:
Currency = ICurrency;
И за всю эту ерунду код не сломался.
Я знаю, что C # не поддерживает этот уровень инкапсуляции и отказоустойчивости с синтаксисом, который я придумал.
Но может ли кто-нибудь предложить синтаксис, который может имитировать то, что люди пытались выполнить ( включая меня )?