アンマネージ PInvoke シナリオで System.Numerics.Complex を使用したいと考えています。ILSpy を使用して、LayoutKind.Sequential 属性が割り当てられていないことに気付きました。
/// <summary>Represents a complex number.</summary>
[Serializable]
public struct Complex : IEquatable<Complex>, IFormattable
{
private double m_real;
private double m_imaginary;
...
共通メモリ レイアウトを期待するネイティブ関数に変換せずに、Complex[] 配列へのポインターを与えることは安全ですか? それとも、何らかの理由で CLR がその実数と虚数の属性を乱す可能性はありますか?