std::experimental::memory_alignment

< cpp‎ | experimental‎ | simd
在标头 <experimental/simd> 定义
template< class T, class U = typename T::value_type >
struct memory_alignment;
(并行 TS v2)

如果 is_simd_mask_v<T>trueUbool,或者如果 is_simd_v<T>trueU 是可向量化类型,提供的成员常量 value,其值等于传递给加载构造函数,copy_from 函数或 copy_to 函数的指针的最小对齐。对于任何其他类型的 TU,无成员常量 value

如果程序添加了 std::memory_alignment std::memory_alignment_v (C++17 起) 的特化,那么行为未定义。

辅助变量模板

template< class T, class U = typename T::value_type >
inline constexpr std::size_t memory_alignment_v = memory_alignment<T, U>::value;
(并行 TS v2)

继承自 std::integral_constant

成员常量

value
[静态]
传递给加载构造函数,copy_from 函数或 copy_to 函数的指针的最小对齐
(公开静态成员常量)

成员函数

operator std::size_t
将对象转换到  std::size_t,返回 value
(公开成员函数)
operator()
(C++14)
返回 value
(公开成员函数)

成员类型

类型 定义
value_type  std::size_t
type std::integral_constant< std::size_t, value>

示例

参阅

指示向量类型对齐的标签类型
(类)
(并行 TS v2)
构造 simd 对象
(std::experimental::simd<T,Abi> 的公开成员函数)
(并行 TS v2)
从连续内存加载 simd 元素
(std::experimental::simd<T,Abi> 的公开成员函数)
(并行 TS v2)
向连续内存存储 simd 的元素
(std::experimental::simd<T,Abi> 的公开成员函数)
(并行 TS v2)
构造 simd_mask 对象
(std::experimental::simd_mask<T,Abi> 的公开成员函数)
(并行 TS v2)
从连续内存加载 simd_mask 元素
(std::experimental::simd_mask<T,Abi> 的公开成员函数)
(并行 TS v2)
向连续内存存储 simd_mask 的元素
(std::experimental::simd_mask<T,Abi> 的公开成员函数)