gpt4 book ai didi

c++ - 将 std::vector 转换为 std::string_view

转载 作者:行者123 更新时间:2023-12-02 09:59:19 25 4
gpt4 key购买 nike

我有一些类型为 std::vector<uint8_t> 的数据.我想将它解释为一个字符串并对其进行一些子字符串检查。
可以通过将其转换为 std::string 来完成这将导致复制数据。是否有可能以某种方式将其转换为 std::string_view并对其进行搜索以避免复制它。

最佳答案

前提是char在您的系统上是 8 位(大多数系统都是),您可以简单地 reinterpret_cast vector的数据到 char*并从中提出观点,例如:

std::vector<uint8_t> data;
...
std::string_view sv(reinterpret_cast<char*>(data.data()), data.size());
或者,在 C++20 中,您可以改用迭代器:
std::vector<uint8_t> data;
...
std::string_view(data.begin(), data.end());

关于c++ - 将 std::vector<uint8_t> 转换为 std::string_view,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63495886/

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