320x100
clamp란 값을 특정 범위 내에 가둬놓고 싶을 때 사용하는 함수다.
예를들어, x의 값을 1부터 10까지 한정짓고 싶다면 보통은
if (x > 10) x = 10;
else if (x < 1) x = 1;
이렇게 코딩을 하거나 아니면 커스텀으로 clamp 함수를 만들었을텐데 이젠 C++에서 공식적인 함수로 지원한다. C++17부터 지원하며 <algorithm> 헤더파일을 include하고 사용 한다.
#include <algorithm>
int func(int x) {
return std::clamp(x, 1, 10);
}
int main() {
int x = 5;
x = func(x++); // 6
x = 10;
x = func(x++); // 10;
return 0;
}
https://en.cppreference.com/w/cpp/algorithm/clamp
320x100
'프로그래밍 > Morden C++' 카테고리의 다른 글
std::min, std::max 사용시 (0) | 2021.10.06 |
---|---|
std::map (0) | 2021.10.05 |
std::accumulate (0) | 2021.09.22 |
[C++17] std::optional (0) | 2021.07.17 |
std::splice (0) | 2021.07.13 |