Vector<T> 構造体

定義

並列アルゴリズムの低レベルの最適化に適した、指定した数値型の単一ベクトルを表します。

generic <typename T>
 where T : value classpublic value class Vector : IEquatable<System::Numerics::Vector<T>>, IFormattable
public struct Vector<T> : IEquatable<System.Numerics.Vector<T>>, IFormattable where T : struct
type Vector<'T (requires 'T : struct)> = struct
    interface IFormattable
Public Structure Vector(Of T)
Implements IEquatable(Of Vector(Of T)), IFormattable

型パラメーター

T

ベクター内の要素の型。 T には、任意のプリミティブ数値型を指定できます。

継承
Vector<T>
実装

注釈

Vector<T> は、指定した数値型の 1 つのベクターを表す不変構造体です。 Vector<T>インスタンスの数は固定されていますが、上限は CPU レジスタに依存します。 これは、大規模なアルゴリズムをベクター化するための構成要素として使用することを目的としているため、任意の長さのベクトルまたはテンソルとして直接使用することはできません。

Vector<T>構造体は、ハードウェア アクセラレーションのサポートを提供します。

この記事の プリミティブ数値データ型 という用語は、CPU によって直接サポートされ、それらのデータ型を操作できる命令を持つ数値データ型を指します。

コンストラクター

名前 説明
Vector<T>(Span<T>)

指定した Span<T>からベクターを構築します。

Vector<T>(T)

指定した型のコンポーネントを持つベクターを作成します。

Vector<T>(T[], Int32)

指定したインデックス位置から始まる指定した配列からベクターを作成します。

Vector<T>(T[])

指定した配列からベクターを作成します。

プロパティ

名前 説明
Count

ベクターに格納されている要素の数を返します。

Item[Int32]

指定したインデックス位置にある要素を取得します。

One

すべてのベクトルを含むベクターを返します。

Zero

すべてのゼロを含むベクターを返します。

メソッド

名前 説明
CopyTo(T[], Int32)

指定したインデックス位置から始まる、指定したコピー先配列にベクター インスタンスをコピーします。

CopyTo(T[])

指定したコピー先配列にベクター インスタンスをコピーします。

Equals(Object)

このインスタンスが指定したオブジェクトと等しいかどうかを示す値を返します。

Equals(Vector<T>)

このインスタンスが指定したベクターと等しいかどうかを示す値を返します。

GetHashCode()

このインスタンスのハッシュ コードを返します。

ToString()

既定の書式設定を使用して、このベクターの文字列形式を返します。

ToString(String, IFormatProvider)

指定した書式指定文字列を使用して個々の要素を書式設定し、指定した書式プロバイダーを使用してカルチャ固有の書式設定を定義する、このベクターの文字列形式を返します。

ToString(String)

指定した書式指定文字列を使用して個々の要素を書式設定する、このベクターの文字列形式を返します。

演算子

名前 説明
Addition(Vector<T>, Vector<T>)

2 つのベクトルを一緒に追加します。

BitwiseAnd(Vector<T>, Vector<T>)

2 つのベクトル内の各要素に対してビットごとの And 演算を実行して、新しいベクターを返します。

BitwiseOr(Vector<T>, Vector<T>)

2 つのベクトル内の各要素に対してビットごとの Or 演算を実行して、新しいベクターを返します。

Division(Vector<T>, Vector<T>)

最初のベクトルを 2 番目のベクトルで除算します。

Equality(Vector<T>, Vector<T>)

指定した 2 つのベクトル内の要素の各ペアが等しいかどうかを示す値を返します。

ExclusiveOr(Vector<T>, Vector<T>)

2 つのベクトル内の各要素に対してビットごとの XOr 演算を実行して、新しいベクターを返します。

Explicit(Vector<T> to Vector<Byte>)

指定したベクターのビットを、 Byte型のベクターに再解釈します。

Explicit(Vector<T> to Vector<Double>)

指定したベクターのビットを、 Double型のベクターに再解釈します。

Explicit(Vector<T> to Vector<Int16>)

指定したベクターのビットを、 Int16型のベクターに再解釈します。

Explicit(Vector<T> to Vector<Int32>)

指定したベクターのビットを、 Int32型のベクターに再解釈します。

Explicit(Vector<T> to Vector<Int64>)

指定したベクターのビットを、 Int64型のベクターに再解釈します。

Explicit(Vector<T> to Vector<SByte>)

指定したベクターのビットを、 SByte型のベクターに再解釈します。

Explicit(Vector<T> to Vector<Single>)

指定したベクターのビットを、 Single型のベクターに再解釈します。

Explicit(Vector<T> to Vector<UInt16>)

指定したベクターのビットを、 UInt16型のベクターに再解釈します。

Explicit(Vector<T> to Vector<UInt32>)

指定したベクターのビットを、 UInt32型のベクターに再解釈します。

Explicit(Vector<T> to Vector<UInt64>)

指定したベクターのビットを、 UInt64型のベクターに再解釈します。

Inequality(Vector<T>, Vector<T>)

指定したベクター内の要素の 1 つのペアが等しくないかどうかを示す値を返します。

Multiply(T, Vector<T>)

ベクターに指定したスカラー値を乗算します。

Multiply(Vector<T>, T)

ベクターに指定したスカラー値を乗算します。

Multiply(Vector<T>, Vector<T>)

指定された 2 つのベクトル内の要素の各ペアの積である値を持つ新しいベクターを返します。

OnesComplement(Vector<T>)

指定したベクターの要素の補数を取得して要素を取得する新しいベクターを返します。

Subtraction(Vector<T>, Vector<T>)

最初のベクトルから 2 番目のベクトルを減算します。

UnaryNegation(Vector<T>)

指定されたベクターを否定します。

適用対象