C++20中的std::span怎么使用(C++,开发技术)

时间:2024-05-06 16:21:05 作者 : 石家庄SEO 分类 : 开发技术
  • TAG :

    C%2B%2B20%E4%B8%AD%E7%9A%84std%3A%3Aspan%E6%80%8E%E4%B9%88%E4%BD%BF%E7%94%A8

span就是一个连续对象存储的观察者。类似std::string_view是string的观察者。
连续的存储,不一定是数组。例如:

为了程序的复用性,我们一般使用zero(char* arr, size_t n);这种函数签名。

这种模板形式虽然比只能处理char[10]这种类型的zero函数,适用性大一些,但是它仍不能处理广义上的连续char内存。
zero(char*arr, sizr_t n)的灵活性是有了,问题是用户(调用者)可能把n填错。例如:

为了解决这个问题,我们需要写很繁琐的代码:

有了std::span, 我们可以:

我们可以手工粗陋的制作一个span类,虽然它不符合STL容器规范,但是可以看出主要核心骨架

本文:C++20中的std::span怎么使用的详细内容,希望对您有所帮助,信息来源于网络。
上一篇:vue在.js文件中怎么引入store和router下一篇:

17 人围观 / 0 条评论 ↓快速评论↓

(必须)

(必须,保密)

阿狸1 阿狸2 阿狸3 阿狸4 阿狸5 阿狸6 阿狸7 阿狸8 阿狸9 阿狸10 阿狸11 阿狸12 阿狸13 阿狸14 阿狸15 阿狸16 阿狸17 阿狸18