std::experimental::is_simd, std::experimental::is_simd_mask
来自cppreference.com
< cpp | experimental | simd
数据并行向量库
| 主类 | ||||||||||||||||
| ABI 标签 | ||||||||||||||||
| 对齐标签 | ||||||||||||||||
| where_expression | ||||||||||||||||
| 转型 | ||||||||||||||||
| 算法 | ||||||||||||||||
| 规约 | ||||||||||||||||
| 掩码规约 | ||||||||||||||||
| 特性 | ||||||||||||||||
|
||||||||||||||||
| 数学函数 | ||||||||||||||||
|
在标头
<experimental/simd>
定义
|
||
|
template< class T >
struct is_simd; |
(1) | (并行 TS v2) |
|
template< class T >
struct is_simd_mask; |
(2) | (并行 TS v2) |
模板形参
| T | - | 要检查的类型 |
辅助变量模板
|
template< class T >
inline constexpr bool is_simd_v = is_simd<T>::value; |
(并行 TS v2) | |
|
template< class T >
inline constexpr bool is_simd_mask_v = is_simd_mask<T>::value; |
(并行 TS v2) | |
继承自 std::integral_constant
成员常量
|
value
[静态]
|
如果 T 为 simd/simd_mask 类型那么是 true,否则是 false
(公开静态成员常量) |
成员函数
|
operator bool
|
将对象转换到 bool,返回 value (公开成员函数) |
|
operator()
(C++14)
|
返回 value (公开成员函数) |
成员类型
| 类型 | 定义 |
value_type
|
bool |
type
|
std::integral_constant<bool, value> |
示例
运行此代码
#include <experimental/simd> #include <iostream> int main() { namespace stdx = std::experimental; std::cout << std::boolalpha << stdx::is_simd_v<stdx::simd<float>> << '\n'; << stdx::is_simd_v<int> << '\n'; << stdx::is_simd_mask_v<stdx::simd_mask<float>> << '\n'; << stdx::is_simd_mask_v<int> << '\n'; }
输出:
true false true false
参阅
|
(并行 TS
v2)
|
检查类型是否为 simd_mask 类型 (类模板) |