gpt4 book ai didi

c++ - 有没有更短的方法来初始化 QByteArray?

转载 作者:可可西里 更新时间:2023-11-01 16:54:14 27 4
gpt4 key购买 nike

在我的程序中,我经常使用串行通信,所以 QByteArray经常使用。

我想知道是否有更短的方法来初始化 QByteArray具有特定字节比:

const char test_data[] = {
static_cast<char>(0xB1), static_cast<char>(0xB2),
0x5, static_cast<char>(0xFF),
static_cast<char>(0xEE), static_cast<char>(0xEE),
static_cast<char>(0x0)}; // Note QByteArray should be able to hold 0 byte
const QCanBusFrame frame = QCanBusFrame(0xA1, QByteArray(test_data));

static_cast<char>是必要的,因为否则 C++11 会给出有关缩小的错误,因为范围 0x7F 到 0xFF 大于 char可能适合——但是 char QByteArray 是什么构造函数要求。

这是 QByteArray正在使用的构造函数:

QByteArray::QByteArray(const char *data, int size = -1)

最佳答案

简单有效:

QByteArray b = QByteArrayLiteral("\x12\x00\xa4\x42\x51\x00\x00\x99");

关于c++ - 有没有更短的方法来初始化 QByteArray?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36327327/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com