私が書いた任意精度の整数クラスの場合、整数の値を含む文字列と、文字列がどのベースにあるかを示す uint16_t を受け入れるコンストラクターがあります。
integer("123", 10) -> 0x7b -> 123 base 10
integer("ab", 256) -> 0x6162 -> 24930 base 10
私のクラスは負の数も受け入れることができるので、コンストラクター-
は値が負であることを意味すると読み取ります-
。-
ASCII 文字列の前に があいまいにならないようにコードを変更するにはどうすればよいですか? ------
(基数 10 の正の 49672054713645) と------
(基数 10 の負の 194031463725 )である入力文字列をどのように区別しますか?
現在、すべての ASCII 値を正と見なしています。
コンストラクターが 2 つの引数のみを受け入れるようにしたいと考えていますが、明らかな場合: コンストラクターを変更/分割/追加することinteger(positive/negative, string, base)
が唯一の良いアイデアである場合は、それを検討することができます。