std::integral
來自 cppreference.com
定義於標頭檔案 <concepts> |
||
template< class T > concept integral = std::is_integral_v<T>; |
(C++20 起) | |
概念 integral<T> 當且僅當 T
是一個整型型別時滿足。
[編輯] 示例
執行此程式碼
#include <concepts> #include <iostream> void print(std::integral auto i) { std::cout << "Integral: " << i << '\n'; } void print(auto x) { std::cout << "Non-integral: " << x << '\n'; } int main() { std::cout << std::boolalpha; static_assert(std::integral<bool>); print(true); static_assert(std::integral<char>); print('o'); static_assert(std::integral<int>); print(007); static_assert( ! std::integral<double> ); print(2e2); static_assert( ! std::integral<decltype("")> ); print("∫∫∫"); }
輸出
Integral: true Integral: o Integral: 7 Non-integral: 200 Non-integral: ∫∫∫
[編輯] 參考
- C++23 標準 (ISO/IEC 14882:2024)
- 18.4.7 算術概念 [concepts.arithmetic]
- C++20 標準 (ISO/IEC 14882:2020)
- 18.4.7 算術概念 [concepts.arithmetic]
[編輯] 參閱
(C++11) |
檢查型別是否為整型 (類模板) |