Как преобразовать quint / qint в обычный int (QT) - PullRequest
0 голосов
/ 03 апреля 2020

В моей программе, отправитель Udp, я работаю с QT и должен преобразовать QT-тип quint64 в обычный int.

Метод QUdpSocket::writeDatagram возвращает количество отправленных байт в типе quint64. В моей программе никогда не будет отправляться более 1024 байтов одновременно, поэтому не будет проблем с размером числа при преобразовании в обычное int - что мне нужно для дальнейшей обработки.

Какой метод или функцию я могу использовать для преобразования этого целого числа quint64 в обычное целое число типа c ++ int *

Единственное, что я обнаружил, это документация «QDataStream Class» (которая, казалось, не содержала такой вещи), и это вопрос: Как приятно "привести" qint64 к int для QProgressBar , но оно не содержит решения.

1 Ответ

1 голос
/ 03 апреля 2020

quint64 - это просто псевдоним для long long int (__int64 на Windows). Если вы знаете, что значение вписывается в диапазон, вы можете просто написать:

quint64 x = 42;
int y = x;

Тем не менее, явное выражение лучше:

quint64 x = 42;
int y = static_cast<int>(x);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...