Класс BigInteger
Публичные функции
Связанные функции
(Следует обратить внимание, что функции не являются членами класса) |
|
QCA_EXPORT QTextStream & |
operator<< (QTextStream &stream, const BigInteger &b) |
Подробное описание
Целое число произвольной точности.
BigInteger предоставляет тип целых чисел
произвольной точности.
if ( BigInteger("3499543804349") ==
BigInteger("38493290803248") + BigInteger( 343 ) )
{
}
Описание конструкторов и деструктора
BigInteger() [1/6]
QCA::BigInteger::BigInteger () |
Конструктор.
Создаёт новый BigInteger
,
инициализированный нулём.
BigInteger() [2/6]
QCA::BigInteger::BigInteger (int n) |
Это перегруженная функция, предоставленная для удобства. Она отличается от указанной выше функции
только тем, какие аргументы она принимает.
Параметры
n |
Альтернативное целочисленное значение инициализации. |
BigInteger() [3/6]
QCA::BigInteger::BigInteger (const char * c) |
Это перегруженная функция, предоставленная для удобства. Она отличается от указанной выше функции
только тем, какие аргументы она принимает.
Параметры
c |
Альтернативное значение инициализации, закодированное как массив символов |
BigInteger b ( "9890343" );
BigInteger() [4/6]
QCA::BigInteger::BigInteger (const QString & s) |
Это перегруженная функция, предоставленная для удобства. Она отличается от указанной выше функции
только тем, какие аргументы она принимает.
Параметры
s |
Альтернативное значение инициализации, закодированное в виде строки |
BigInteger() [5/6]
Это перегруженная функция, предоставленная для удобства. Она отличается от указанной выше функции
только тем, какие аргументы она принимает.
Параметры
a |
Альтернативное значение инициализации, закодированное как SecureArray |
BigInteger() [6/6]
QCA::BigInteger::BigInteger (const BigInteger & from) |
Это перегруженная функция, предоставленная для удобства. Она отличается от указанной выше функции
только тем, какие аргументы она принимает.
Параметры
from |
Альтернативное значение инициализации, закодированное как BigInteger |
Описание методов
operator=() [1/2]
BigInteger& QCA::BigInteger::operator= (const BigInteger & from) |
Оператор присваивания.
Параметры
from |
BigInteger для копирования |
BigInteger a;
BigInteger b( 500 );
a = b;
operator=() [2/2]
BigInteger& QCA::BigInteger::operator= (const QString & s) |
Это перегруженная функция, предоставленная для удобства. Она отличается от указанной выше функции
только тем, какие аргументы она принимает.
Параметры
s |
Объект QString, содержащий целочисленное представление |
См. также bool fromString(const QString
&s)
Примечание.
Ответственность за то, чтобы аргумент s типа QString
содержал действительное целое число (т.е.
он содержит только символы цифр и необязательный знак минус в начале), лежит на приложении.
operator+=()
BigInteger& QCA::BigInteger::operator+= (const BigInteger & b) |
Оператор приращения.
Параметры
b |
Значение для увеличения |
BigInteger a;
BigInteger b( 500 );
a += b;
a += b;
operator-=()
BigInteger& QCA::BigInteger::operator-= (const BigInteger & b) |
Оператор уменьшения текущего значения.
Параметры
b |
Значение для уменьшения |
BigInteger a;
BigInteger b( 500 );
a -= b;
a -= b;
operator*=()
BigInteger& QCA::BigInteger::operator*= (const BigInteger & b) |
Оператор умножения текущего значения.
Параметры
operator/=()
BigInteger& QCA::BigInteger::operator/= (const BigInteger & b) |
Оператор деления текущего значения.
Параметры
operator%=()
BigInteger& QCA::BigInteger::operator%= (const BigInteger & b) |
Оператор деления по модулю на текущем объекте.
Параметры
toArray()
Выводит объект BigInteger
как массив байтов, пригодный для хранения или передачи.
Формат представляет собой двоичное целое число в сетевом порядке байтов с расширением знака.
См. также void fromArray(const SecureArray
&a);
fromArray()
Присваивает из массива.
Ожидается, что ввод будет двоичным целым числом в сетевом порядке байтов с расширением знака.
Параметры
a |
Объект SecureArray , представляющий собой целое число |
См. также BigInteger(const SecureArray
&a);
SecureArray toArray()
const;
toString()
QString QCA::BigInteger::toString () const |
Преобразует объект BigInteger в QString
.
QString aString;
BigInteger aBiggishInteger( 5878990 );
aString = aBiggishInteger.toString();
Примеры
certtest.cpp.
fromString()
bool QCA::BigInteger::fromString (const QString & s) |
Присваивает значение из QString
.
Параметры
s |
Объект QString , представляющий целое число |
Примечание.
Ответственность за то, чтобы аргумент s типа QString
содержал действительное целое число (т.е.
он содержит только символы цифр и необязательный знак минус в начале), лежит на приложении.
См. также BigInteger(const QString
&s)
BigInteger & operator=(const QString
&s)
compare()
int QCA::BigInteger::compare (const BigInteger & n) const |
Сравнивает это значение с другим BigInteger
.
Обычно удобнее использовать одну из перегрузок оператора, поэтому не нужно использовать этот метод
напрямую.
Параметры
n |
Объект BigInteger для сравнения |
Возвращает ноль, если значения одинаковы, отрицательное значение, если аргумент меньше значения этого
BigInteger
, и положительное значение,
если значение аргумента больше этого
BigInteger
.
BigInteger a( "400" );
BigInteger b( "-400" );
BigInteger c( " 200 " );
int result;
result = a.compare( b );
result = a.compare( c );
result = b.compare( c );
operator==()
bool QCA::BigInteger::operator== (const BigInteger & other) const |
inline |
Оператор равенства.
Возвращает true
, если два значения
BigInteger
совпадают, в том числе имеют
одинаковый знак.
Параметры
other |
Объект BigInteger для сравнения |
operator!=()
bool QCA::BigInteger::operator!= (const BigInteger & other) const |
inline |
Оператор неравенства.
Возвращает true
, если два значения
BigInteger
различаются по величине,
знаку или по обоим признакам.
Параметры
other |
Объект BigInteger для сравнения |
operator<=()
bool QCA::BigInteger::operator<= (const BigInteger & other) const |
inline |
Оператор "меньше или равно".
Возвращает true
, если значение
BigInteger
слева меньше или равно
значению BigInteger
справа.
Параметры
other |
Объект BigInteger для сравнения |
operator>=()
bool QCA::BigInteger::operator>= (const BigInteger & other) const |
inline |
Оператор "больше или равно".
Возвращает true
, если значение
BigInteger
в левой части больше или
равно значению BigInteger
в правой
части.
Параметры
other |
Объект BigInteger для сравнения |
operator<()
bool QCA::BigInteger::operator< (const BigInteger & other) const |
inline |
Оператор "меньше".
Возвращает true
, если значение
BigInteger
в левой части меньше, чем
значение BigInteger
в правой части.
Параметры
other |
Объект BigInteger для сравнения |
operator>()
bool QCA::BigInteger::operator> (const BigInteger & other) const |
inline |
Оператор больше.
Возвращает true
, если значение
BigInteger
слева больше, чем значение
BigInteger
справа.
Параметры
other |
Объект BigInteger для сравнения |
Описание дружественных и связанных функций
operator<<()
QCA_EXPORT QTextStream & operator<< (QTextStream & stream, const BigInteger & b ) |
related |
Оператор потока.
Параметры
stream |
Поток для записи |
b |
Целое число для записи в поток |