sách gpt4 ăn đã đi

Sao chép vectơ cấu trúc/cấu trúc POD sang vectơ cách thanh lịch nhất

In lại 作者:太空狗 更新时间:2023-10-29 21:22:51 28 4
mua khóa gpt4 giày nike

通常我使用类似的东西

copy((uint8_t*)&POD, (uint8_t*)(&POD + 1 ), back_inserter(rawData));

copy((uint8_t*)&PODVec[0], (uint8_t*)(&PODVec[0] + PODVec.size()), back_inserter(rawData));

但我不是这个解决方案的 super 粉丝。有更好的方法吗?

câu trả lời hay nhất

您可以编写一对辅助函数来隐藏丑陋的转换和指针算法:

mẫu
char* object_begin(T& obj)
{
trở lại
&const_cast(
reinterpret_cast(obj)
);
}

mẫu
char* object_end(T& obj)
{
return object_begin(obj) + sizeof(obj);
}

你会像这样使用它们:

vector vpod;
vector vbytes;

copy(object_begin(vpod.front()),
object_end(vpod.back()),
back_inserter(vbytes));

关于c++ - 将 POD 结构/结构 vector 复制到 vector 的最优雅方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19766800/

28 4 0
Chứng chỉ ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com
Xem sitemap của VNExpress