gpt4 book ai didi

c++ - 如何使用基数组扩展 C++ 中的常量数组

转载 作者:行者123 更新时间:2023-12-03 06:51:58 25 4
gpt4 key购买 nike

在 C++ 中,是否可以将常量数组声明为较小常量数组的扩展?
例如,如果我有以下数组:

const uint32 oid_base[] = {1,3,6,1,4,1,72000};
const uint32 oid_complete[] = {1,3,6,1,4,1,72000,1,1};
有没有办法申报 oid_complete使用 oid_baseoid_complete的声明中?
我的猜测是这在 C++ 中是不可能的,但想知道是否有人对此有很好的解决方案。

最佳答案

这不就是什么gsl::span是为了?

const uint32_t oid_complete_data[] = {1,3,6,1,4,1,72000,1,1};

const gsl::span<const uint32_t> oid_complete{
oid_complete_data,
sizeof(oid_complete_data)};

const gsl::span<const uint32_t> oid_base{
oid_complete_data,
sizeof(oid_complete_data)-2};

(参见 https://godbolt.org/z/bGeGeP)

关于c++ - 如何使用基数组扩展 C++ 中的常量数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64432007/

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