如何将 quint / qint 转换为常规 int (QT)
How to convert quint / qint to regular int (QT)
在我的程序中,一个 Udp 发件人,我正在使用 QT 并且必须将 QT 类型 quint64
转换为常规 int
。
方法QUdpSocket::writeDatagram
returns类型quint64
发送的字节数。
在我的程序中,一次发送的字节永远不会超过 1024 个,因此在转换为常规 int 时数字的大小不会有问题——我需要进一步处理它。
我可以使用什么方法或函数将此 quint64 整数转换为常规 C++ "int" 整数?
我唯一找到的是 "QDataStream Class" 文档(似乎没有这样的东西)和这个问题:How to nicely "cast" qint64 to int for QProgressBar,但它没有包含解决方案。
quint64
只是 long long int
的别名(__int64
在 Windows 上)。如果您知道该值适合该范围,那么您可以简单地写:
quint64 x = 42;
int y = x;
然而,明确的更好:
quint64 x = 42;
int y = static_cast<int>(x);
在我的程序中,一个 Udp 发件人,我正在使用 QT 并且必须将 QT 类型 quint64
转换为常规 int
。
方法QUdpSocket::writeDatagram
returns类型quint64
发送的字节数。
在我的程序中,一次发送的字节永远不会超过 1024 个,因此在转换为常规 int 时数字的大小不会有问题——我需要进一步处理它。
我可以使用什么方法或函数将此 quint64 整数转换为常规 C++ "int" 整数?
我唯一找到的是 "QDataStream Class" 文档(似乎没有这样的东西)和这个问题:How to nicely "cast" qint64 to int for QProgressBar,但它没有包含解决方案。
quint64
只是 long long int
的别名(__int64
在 Windows 上)。如果您知道该值适合该范围,那么您可以简单地写:
quint64 x = 42;
int y = x;
然而,明确的更好:
quint64 x = 42;
int y = static_cast<int>(x);