次の方法で共有


copy 関数

C++ AMP オブジェクトをコピーします。 すべての同期データ転送の条件が満たされます。 アクセラレータでコードを実行しているときにデータをコピーすることはできません。 この関数の一般的な形式は copy(src, dest) です。

template <
   typename _Value_type,
   int _Rank
>
void copy(
   const array<_Value_type, _Rank>& _Src,
   array<_Value_type, _Rank>& _Dest
);

template <
   typename InputIterator,
   typename _Value_type,
   int _Rank
>
void copy(
   InputIterator _SrcFirst,
   InputIterator _SrcLast,
   array<_Value_type, _Rank> &_Dest
);

template <
   typename InputIterator,
   typename _Value_type,
   int _Rank
>
void copy(
   InputIterator _SrcFirst,
   array<_Value_type, _Rank> &_Dest
);

template <
   typename OutputIterator,
   typename _Value_type,
   int _Rank
>
void copy(
   const array<_Value_type, _Rank> &_Src,
   OutputIterator _DestIter
);

template <
   typename _Value_type,
   int _Rank
>
void copy(
   const array<_Value_type, _Rank>& _Src,
   array_view<_Value_type, _Rank>& _Dest
);

template <
   typename _Value_type,
   int _Rank
>
void copy(
   const array_view<const _Value_type, _Rank>& _Src,
   array<_Value_type, _Rank>& _Dest
);

template <
   typename _Value_type,
   int _Rank
>
void copy(
   const array_view<_Value_type, _Rank>& _Src,
   array<_Value_type, _Rank>& _Dest
);

template <
   typename _Value_type,
   int _Rank
>
void copy(
   const array_view<const _Value_type, _Rank>& _Src,
   array_view<_Value_type, _Rank>& _Dest
);

template <
   typename _Value_type,
   int _Rank
>
void copy(
   const array_view<_Value_type, _Rank>& _Src,
   array_view<_Value_type, _Rank>& _Dest
);

template <
   typename InputIterator,
   typename _Value_type,
   int _Rank
>
void copy(
   InputIterator _SrcFirst,
   InputIterator _SrcLast,
   array_view<_Value_type, _Rank> &_Dest
);

template <
   typename InputIterator,
   typename _Value_type,
   int _Rank
>
void copy(
   InputIterator _SrcFirst,
   array_view<_Value_type, _Rank> &_Dest
);

template <
   typename OutputIterator,
   typename _Value_type,
   int _Rank
>
void copy(
   const array_view<_Value_type, _Rank> &_Src,
   OutputIterator _DestIter
);

パラメーター

  • _Dest
    コピー先のオブジェクト。

  • _DestIter
    コピー先での開始位置の出力反復子。

  • InputIterator
    入力列挙子の型。

  • OutputIterator
    出力反復子の型。

  • _Rank
    コピー元のオブジェクトまたはコピー先のオブジェクトのランク。

  • _Src
    コピーするオブジェクト。

  • _SrcFirst
    ソース コンテナーへの先頭の反復子。

  • _SrcLast
    ソース コンテナーへの終了の反復子。

  • _Value_type
    コピーされた要素のデータ型。

解説

コピー操作では、詳細コピーが常に実行されます。

コピー元とコピー先のオブジェクトの範囲が一致しない場合、runtime_exception がスローされます。

次のソースから array オブジェクトと array_view オブジェクトにコピーできます。

  • コピー先の array または array_view と同じランクおよび要素型である array または array_view

  • 要素の型がコピー先の array または array_view と同じである標準的なコンテナー。 size() メンバーおよび data() メンバーを公開するコンテナーの方が効率的に実行します。

必要条件

ヘッダー: amp.h

名前空間: Concurrency

参照

関連項目

Concurrency 名前空間 (C++ AMP)