Задание №3
В данном задании необходимо реализовать класс длинного числа со small-object и copy-on-write оптимизациями.
Длинное число должно удовлетворять всем требованиям задания 2 плюс:
- Если в big_integer хранится число -2N ≤ a ≤ 2N-1, big_integer не должен выделять
динамическую память. Конкретное значение N вы можете выбрать самостоятельно, допустимыми являются
любые N ≥ 30.
- Числа a < -2N и a > 2N-1 должны выделять
не больше одного блока динамической памяти на каждый экземпляр big_integer.
- Конструктор копирования и оператор присваивания должны работать за O(1) и удовлетворять гарантии
безопасности исключений nothrow.