gpt4 book ai didi

c++ - 将不同类型的数据存储到一个 vector 中?

转载 作者:行者123 更新时间:2023-11-28 03:47:49 27 4
gpt4 key购买 nike

我正在尝试编写一个通用函数,将不同数据类型的参数转换并存储到 vector<char> 中。 .通过强制转换,我的意思是位表示保留在字符 vector 中。例如一个 4 字节的 int例如 0x19a4f607将作为 vc[0] = 0x19 存储在 vector 中, vc[1] = 0xa4 , vc[2] = 0xf6vc[3] = 0x07 .

这是我到目前为止所写的内容,但我遇到了段错误。知道如何解决这个问题吗?

template <class T>
void push_T(vector<char>& vc, T n){
char* cp = (char*)&n;
copy(cp, cp+sizeof(T), vc.end());
}

最佳答案

您需要一个能够在 vector 末尾插入的迭代器; .begin().end() 只能修改现有元素。尝试 std::back_inserter(vc)

关于c++ - 将不同类型的数据存储到一个 vector<char> 中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6920959/

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