Namespaces
Variants

std::experimental:: where

From cppreference.net
Определено в заголовке <experimental/simd>
template < class T, class Abi >

where_expression < simd_mask < T, Abi > , simd < T, Abi >>
where ( const typename simd < T, Abi > :: mask_type & mask,

simd < T, Abi > & value ) noexcept ;
(1) (parallelism TS v2)
template < class T, class Abi >

const_where_expression < simd_mask < T, Abi > , const simd < T, Abi >>
where ( const typename simd < T, Abi > :: mask_type & mask,

const simd < T, Abi > & value ) noexcept ;
(2) (parallelism TS v2)
template < class T, class Abi >

where_expression < simd_mask < T, Abi > , simd_mask < T, Abi >>
where ( const type_identity_t < simd_mask < T, Abi >> & mask,

simd_mask < T, Abi > & value ) noexcept ;
(3) (parallelism TS v2)
template < class T, class Abi >

const_where_expression < simd_mask < T, Abi > , const simd_mask < T, Abi >>
where ( const type_identity_t < simd_mask < T, Abi >> & mask,

const simd_mask < T, Abi > & value ) noexcept ;
(4) (parallelism TS v2)
template < class T >

where_expression < bool , T >

where ( /*см. ниже*/ mask, T & value ) noexcept ;
(5) (parallelism TS v2)
template < class T >

const_where_expression < bool , const T >

where ( /*см. ниже*/ mask, const T & value ) noexcept ;
(6) (parallelism TS v2)

Создает новое выражение const_where_expression или where_expression .

1-6) Создает where_expression из заданных параметров маски и значения.

Содержание

Параметры

1-4)
mask - объект simd_mask
value - ссылка на объект simd , к которому применяется маска
5,6)
mask - маска типа bool
value - ссылка на скаляр, к которому применяется маска

Возвращаемое значение

Сконструированное const_where_expression или where_expression .

Примечания

5,6) Использует определяемый реализацией тип маски, чтобы неявные преобразования из других типов в bool были отключены.

Пример