Сообщение Re[5]: Есть ли практический смысл в неявном усечении значени от 22.10.2018 8:53
Изменено 22.10.2018 8:55 netch80
Re[5]: Есть ли практический смысл в неявном усечении значений?
Здравствуйте, _NN_, Вы писали:
_NN>При чём здесь перегрузки ?
_NN>Для каждого выражения просто задаём желаемое поведение.
_NN>А в случае переполнения скажем вызывать std::integer_overflow, который можно переопределить как хотим.
_NN>К примеру C#:
В этом варианте тоже есть проблемы. Знак + для невстроенных типов превращается в op_Add, так?
Но она одна для checked и unchecked контекста. А почему? Получается, для таких типов надо указывать режим в общих свойствах типов, или в типах операций? Неаккуратненько![](/Forum/Images/smile.gif)
_NN>При чём здесь перегрузки ?
_NN>Для каждого выражения просто задаём желаемое поведение.
_NN>А в случае переполнения скажем вызывать std::integer_overflow, который можно переопределить как хотим.
_NN>К примеру C#:
В этом варианте тоже есть проблемы. Знак + для невстроенных типов превращается в op_Add, так?
Но она одна для checked и unchecked контекста. А почему? Получается, для таких типов надо указывать режим в общих свойствах типов, или в типах операций? Неаккуратненько
![](/Forum/Images/smile.gif)
Re[5]: Есть ли практический смысл в неявном усечении значени
Здравствуйте, _NN_, Вы писали:
_NN>При чём здесь перегрузки ?
_NN>Для каждого выражения просто задаём желаемое поведение.
_NN>А в случае переполнения скажем вызывать std::integer_overflow, который можно переопределить как хотим.
_NN>К примеру C#:
В этом варианте тоже есть проблемы. Знак + для невстроенных типов превращается в op_Add, так?
Но она одна для checked и unchecked контекста. А почему? Получается, для таких типов надо указывать режим в общих свойствах типов, или в типах операций? Неаккуратненько![](/Forum/Images/smile.gif)
Уточню: я категорически "за" разделение checked/unchecked; это уже колоссальный прогресс даже в варианте, как сейчас.
Но и тут есть куда двигаться дальше.
_NN>При чём здесь перегрузки ?
_NN>Для каждого выражения просто задаём желаемое поведение.
_NN>А в случае переполнения скажем вызывать std::integer_overflow, который можно переопределить как хотим.
_NN>К примеру C#:
В этом варианте тоже есть проблемы. Знак + для невстроенных типов превращается в op_Add, так?
Но она одна для checked и unchecked контекста. А почему? Получается, для таких типов надо указывать режим в общих свойствах типов, или в типах операций? Неаккуратненько
![](/Forum/Images/smile.gif)
Уточню: я категорически "за" разделение checked/unchecked; это уже колоссальный прогресс даже в варианте, как сейчас.
Но и тут есть куда двигаться дальше.