Concept SignedIntegerConceptAn integral type with a sign.
An integral type with a sign.
Extends | IntegerConcept |
---|---|
All Extended | AssignableConcept, ComparableConcept, CopyConstructibleConcept, DefaultConstructibleConcept, DestructibleConcept, EqualityComparableConcept, IntegerConcept, LessThanComparableConcept |
Defined in | <seqan/basic.h> |
Signature |
SignedIntegerConcept<T>
|
Detailed Description
Expects an instance of type T to represent (possibly negative) integral values and to provide the same operations as int. Every type T that fulfills the IntegerConcept fulfills either the SignedIntegerConcept or the UnsignedIntegerConcept.
Examples
SEQAN_CONCEPT_ASSERT((SignedIntegerConcept<int>)); //SEQAN_CONCEPT_ASSERT((SignedIntegerConcept<unsigned short>)); // fails to compile std::cout << Is<SignedIntegerConcept<char> >::VALUE << std::endl; // 0 std::cout << Is<SignedIntegerConcept<int> >::VALUE << std::endl; // 0 std::cout << Is<SignedIntegerConcept<unsigned short> >::VALUE << std::endl; // 1 std::cout << Is<SignedIntegerConcept<double> >::VALUE << std::endl; // 0
Valid Expressions
T a; int b; a = -1; b = a; a = a - a; a = a + 1; a = a - 1; a = a / 2; static_cast<T>(-1) < static_cast<T>(0);