私はSystem.Numerics.Vector<T>
(ドキュメント)を使用しようとしています。
簡単な単体テストを書きました:
var v = new System.Numerics.Vector<double>(new double[] { 12, 13, 14 });
Assert.AreEqual(3, v.Count);
しかし、ビルドエラーが発生しました:
メンバー 'Vector.Count' は、インスタンス参照ではアクセスできません。代わりに型名で修飾してください
驚いたことに、Vector<T>.Count
静的です。
だから私は試しました:
var v = new System.Numerics.Vector<double>(new double[] { 12, 13, 14 });
Assert.AreEqual(3, Vector<double>.Count);
コードはビルドされますが、単体テストは失敗します。
Assert.AreEqual が失敗しました。予想:<3>。実際:<2>。
どうしたの?
私が見つけた調査:
Assert.AreEqual(2, Vector<double>.Count);
Assert.AreEqual(4, Vector<float>.Count);
Assert.AreEqual(4, Vector<int>.Count);
Assert.AreEqual(2, Vector<long>.Count);