반응형
int a = -2;
unsigned int b = 10;
cout << std::boolalpha;
cout << "-2 < 7 = " << (a < b) << endl;
cout << "-2 <= 7 = " << (a <= b) << endl;
cout << "-2 > 7 = " << (a > b) << endl;
cout << "-2 >= 7 = " << (a >= b) << endl;
int 와 unsigned int를 섞어 쓸 때 위처럼 이상하게 출력이 된다.
그 이유는 a가 unsigned int로 변환이 되면서 이상한 쓰레기 값이 들어가기 때문.
c++20에서 std::cmp_xx 함수 시리즈가 들어와서 int와 unsigned int를 문제없이 비교할 수 있게 되었다.
(정수 아닌 애들은 넣으면 오류 발생)
cout << "-2 < 7 = " << std::cmp_less(a , b) << endl;
cout << "-2 <= 7 = " << std::cmp_less_equal(a , b) << endl;
cout << "-2 > 7 = " << std::cmp_greater(a , b) << endl;
cout << "-2 >= 7 = " << std::cmp_greater_equal(a , b) << endl;
이 외에도 수학 상수 기호들이 추가 되었다.
//const float PI = 3.14f;
std::numbers::pi; //파이
std::numbers::pi_v<float>; //파이(float)
std::numbers::sqrt2; //루트 2
std::numbers::e; //e
//중간값
constexpr int mid = std::midpoint(10, 20);
//선형 보간
constexpr int ler = std::lerp(10, 20, 0.1);
반응형
'C++' 카테고리의 다른 글
C++ 20 : Calendar (0) | 2024.06.04 |
---|---|
C++ 20 : 비트 연산 (0) | 2024.06.04 |
C++ 20 : Container(2) (0) | 2024.05.30 |
C++ 20 : Container(1) (0) | 2024.05.27 |
C++ 20 : std::Span (0) | 2024.05.27 |