- Ifnum1 ornum2 has typelongdouble, thenstd::isgreaterequal(num1, num2) has the same effect asstd::isgreaterequal(static_cast<longdouble>(num1),
static_cast<longdouble>(num2)). - Otherwise, ifnum1 and/ornum2 has typedouble or an integer type, thenstd::isgreaterequal(num1, num2) has the same effect asstd::isgreaterequal(static_cast<double>(num1),
static_cast<double>(num2)). - Otherwise, ifnum1 ornum2 has typefloat, thenstd::isgreaterequal(num1, num2) has the same effect asstd::isgreaterequal(static_cast<float>(num1),
static_cast<float>(num2)).
| (until C++23) |
Ifnum1 andnum2 have arithmetic types, thenstd::isgreaterequal(num1, num2) has the same effect asstd::isgreaterequal(static_cast</*common-floating-point-type*/>(num1), static_cast</*common-floating-point-type*/>(num2)), where/*common-floating-point-type*/ is the floating-point type with the greatestfloating-point conversion rank and greatestfloating-point conversion subrank between the types ofnum1 andnum2, arguments of integer type are considered to have the same floating-point conversion rank asdouble. If no such floating-point type with the greatest rank and subrank exists, thenoverload resolution does not result in a usable candidate from the overloads provided. | (since C++23) |