Не могу придумать лучшего способа написания этой функции.
Я бы назвал ее ClampToSByte
, так как этот вид операции ограничения обычно называется Clamp
.Limit
немного менее конкретен и допускает другие граничные условия, такие как обтекание.
Вы должны быть осторожны, если реализуете подобный код для чисел с плавающей точкой.В частности, вам нужно решить, какое поведение вы хотите для NaN
с и подписанных нулей.Но, к счастью, нет проблем с интегральными значениями.