[concepts.arithmetic] (original) (raw)
18 Concepts library [concepts]
18.4 Language-related concepts [concepts.lang]
18.4.7 Arithmetic concepts [concepts.arithmetic]
template<class T> concept [integral](#concept:integral "18.4.7 Arithmetic concepts [concepts.arithmetic]") = [is_Âintegral_Âv](meta.type.synop#lib:is%5Fintegral%5Fv "20.15.3 Header <type_Âtraits> synopsis [meta.type.synop]")<T>;template<class T> concept [signed_Âintegral](#concept:signed%5Fintegral "18.4.7 Arithmetic concepts [concepts.arithmetic]") = [integral](#concept:integral "18.4.7 Arithmetic concepts [concepts.arithmetic]")<T> && [is_Âsigned_Âv](meta.type.synop#lib:is%5Fsigned%5Fv "20.15.3 Header <type_Âtraits> synopsis [meta.type.synop]")<T>;template<class T> concept [unsigned_Âintegral](#concept:unsigned%5Fintegral "18.4.7 Arithmetic concepts [concepts.arithmetic]") = [integral](#concept:integral "18.4.7 Arithmetic concepts [concepts.arithmetic]")<T> && <T>;template<class T> concept [floating_Âpoint](#concept:floating%5Fpoint "18.4.7 Arithmetic concepts [concepts.arithmetic]") = [is_Âfloating_Âpoint_Âv](meta.type.synop#lib:is%5Ffloating%5Fpoint%5Fv "20.15.3 Header <type_Âtraits> synopsis [meta.type.synop]")<T>;
[Note 1:
signed_Âintegral can be modeled even by types that are not signed integer types ([basic.fundamental]); for example, char.
— _end note_]
[Note 2:
unsigned_Âintegral can be modeled even by types that are not unsigned integer types ([basic.fundamental]); for example, bool.
— _end note_]