제가 만들고자 한 BigInteger 클래스는 최대한 int형처럼 행동하자는 것이 목표였습니다.
따라서, 기본형으로부터 생성 가능, 기본형으로 변환 가능 기능을 지원합니다.

또한, 큰 수를 입력 받아야 하므로, 문자열로부터도 입력을 받을 수 있게 하였고,
2~36진법으로 입력, 출력이 가능합니다.

하지만, BigInteger형은 매우 정밀한 값을 가져야 하므로
오차가 생기는 float, double형으로부터의 생성, 변환은 지원하지 않습니다.

아래 사진은 생성자 부분 일체 입니다.


 
 ▶ 기본 생성자를 통해, BigInteger형은 0으로 초기화 됩니다.
 ▶ 복사 생성자를 지원합니다.
 ▶ 대입 연산자는 생성자가 지원하는 모든 타입으로부터 대입 받을 수 있습니다.
 ▶ bool형, unsigned, signed의 char, short, long, int, __int64로부터 생성, 변환이 가능합니다.
 ▶ float, double형으로부터는 생성, 변환이 불가합니다.
 ▶ 큰 수를 입력 받을 수 있도록, 문자열로부터도 생성, 대입이 가능합니다.
 ▶ 또한, 문자열로 입력시, 2~36진법으로 생성할 수 있습니다.
 ▶ btos함수를 사용하여, BigIntger형을 string형으로 변환가능합니다. (2~36진법 지원)
 ▶ 표준 입출력 장치인 cout와 cin을 사용가능 하게 하였습니다.
 ▶ cout로 출력시, 8, 10, 16진법으로 출력할 수 있습니다.
 ▶ 또한, showpos로 부호(+, -)를, showbase로 8진법의 '0', 16진법의 '0x'를 표현할 수 있습니다.
 ▶ cin으로 입력시에는 10진법으로만 입력이 가능합니다.
Posted by 투명테잎