-1

96 ビットの unsigned int を表すクラスの実装を手伝ってもらえますか?

私はこのクラスを Flag96 と呼んでいます。

コード:

class Flag96
{
    private object array = new uint[3];

    public Flag96(uint a1, uint a2, uint a3)
    {
        uint[] _array = (uint[])array;

        _array[0] = a1;
        _array[2] = a2;
        _array[3] = a3;
    }
}

しかし、私がそれを使用しようとすると:

public Flag96[] example;

効果がないでしょう。Microsoft によって定義された最大整数サイズは 64 ビットであるため、新しいクラスが必要です。

4

1 に答える 1

6

decimal基本的に、スケーリング係数を持つ 96 ビット整数です。を使用すると運が良いかもしれませんdecimal。それ以外...次のようなものが必要ですBigInteger

もちろん、Flag96: という名前を考えると、フラグとしてのみ使用する場合(つまり、整数処理ではなくビット単位で使用する場合)、 aulonguint並べて使用すると問題なく動作するはずです。目的のフラグに適したフィールドとオフセットを選択するだけです。

于 2012-07-12T14:43:18.910 に答える