gpt4 book ai didi

c++ - 令人困惑的 typedef 涉及类范围

转载 作者:IT老高 更新时间:2023-10-28 13:23:45 28 4
gpt4 key购买 nike

我正在阅读一个 C++ 项目的代码,它包含以下形式的一些代码:

namespace ns {
class A {};
class B {};
}

struct C {
typedef ns::A* ns::B::* type;
};

谁能解释 typedef 行的含义? type 似乎是指向 ns::B 成员的某种指针,它指向 ns::A,但我不确定.

真实代码中的

AB不为空,但我觉得这里不相关。这是一个live example .

最佳答案

ns::B::*

是一个指向B的成员变量的指针。那么 ns::A* 就是它的类型。

所以整个声明意味着

B 类型的指针成员变量 ns::A*

关于c++ - 令人困惑的 typedef 涉及类范围,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33764533/

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