Здравствуйте, Doc, Вы писали:
Doc>Здравствуйте, Poopy Joe, Вы писали:
PJ>> "float от 0 до 5" что-то означает. Допустим размер. Вот и надо передавать тип SizeOfSomething, который сам заботится о своем инварианте.
Doc>Т.е. называем каждый используемый вид значений своим типом? В результате получаем кучу дополнительного кода приведения одного к другому, сравнений, присвоений и т.д. Идея в принципе не лишена смысла, но реализация ее в стиле "новый тип на каждый чих" это будет страшно.
А if на каждый чих это не страшно? А контракты на каждый чих не то же самое? Тот же самый код но в разных местах и в большем количестве.
Вместо того, чтобы компилятор проверял и гарантировал корректность использования типа лучше оставить это в кривых руках разработчика?