gpt4 book ai didi

c++ - 指向指针数组的常量指针

转载 作者:太空狗 更新时间:2023-10-29 23:40:35 36 4
gpt4 key购买 nike

我有这门课

struct A {
A();
Item* m_Items[ON_CPU + ON_GPU];
Item** m_ItemsOnCpu;
Item** m_ItemsOnGpu;
};

我需要初始化

m_ItemsOnCpu to m_Items

m_ItemsOnGpu to m_Items + ON_CPU

所以我需要指向数组的两个部分的const 指针。我需要如何声明然后初始化它们?

最佳答案

在 C++11 中你可以这样做:

struct A {
A();
Item* m_Items[ON_CPU + ON_GPU];
Item** const m_ItemsOnCpu = m_Items;
Item** const m_ItemsOnGpu = m_Items + ON_CPU;
};

在其他版本的 C++ 上,使用初始化列表:

struct A {
A() : m_ItemsOnCpu(m_Items), m_ItemsOnGpu(m_Items + ON_CPU) {};
Item* m_Items[ON_CPU + ON_GPU];
Item** const m_ItemsOnCpu;
Item** const m_ItemsOnGpu;
};

关于c++ - 指向指针数组的常量指针,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18595065/

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