gpt4 book ai didi

c++ - 如何在给定包含类实例的情况下实例化嵌套类

转载 作者:搜寻专家 更新时间:2023-10-31 01:06:23 24 4
gpt4 key购买 nike

是否可以这样做:

class BaseClass
{
public:
class NestedClass
{
};
};

BaseClass foo;
foo.NestedClass bar;

如何从实例中获取类型?

最佳答案

您需要做的是:

BaseClass::NestedClass bar;

您无法避免使用范围解析运算符,但您可以在适当的范围内使用 typedef 作为速记:

typedef BaseCLass::NestedClass NestedClass;

编辑:根据所讨论的变化,如果您想要来自实例的类型,在 c++11 中您可以使用 decltype:

decltype(foo)::NestedClass;

但这毫无意义,因为 decltype 会在这种情况下返回 BaseClass。

关于c++ - 如何在给定包含类实例的情况下实例化嵌套类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20890600/

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