我正在做一个项目,我很好奇是否有一种简单的方法可以为一个双变量定义自定义的最大和最小值。目前,有一个相当大的if-else if块来处理这个问题,但我的问题是,我能否在变量的声明中做一些事情,使这些检查不需要?
很好奇是否有一种简单的方法可以为一个双变量定义自定义的最大值和最小值。
从C++17开始,有标准库函数 std::clamp
你可以根据超出的边界,将out-of-bound值设置为最大最小值。
如果你需要对out-of-bound值进行一些其他的行为,或者需要支持旧的C++,你可以使用if-else来检查一个新的值是否在允许的边界内。
目前,有一个相当大的if-else if块来处理这个问题。
两个条件应该足够了。一个是上界,另一个是下界。