コードを Java から C# に変換していますが、int と uint で行き詰まりました。Java コード (抜粋):
public static final int SCALE_PROTO4_TBL = 15;
public static final int [] sbc_proto_4 = { 0xec1f5e60 >> SCALE_PROTO4_TBL };
変換された c# コード (抜粋):
public const int SCALE_PROTO4_TBL = 15;
int[] sbc_proto_4 = new int[] { 0xec1f5e60 >> SCALE_PROTO4_TBL };
その結果、次のコンパイル エラーが発生します。 エラー CS0266 型 'uint' を 'int' に暗黙的に変換できません。明示的な変換が存在します (キャストがありませんか?)
上記のようなコードはたくさんありますが、すべての Java int を C# uint に変換する必要があるかどうかわかりません。Java int が負の数の場合、C# uint は負の値を格納しないことを思い出すと、問題が発生しました。
問題にどのように取り組むべきかについての意見はありますか?