gpt4 book ai didi

c++ - 在内部类中使用 struct 时出现编译错误

转载 作者:行者123 更新时间:2023-11-28 05:24:31 27 4
gpt4 key购买 nike

我找不到任何答案来帮助我理解为什么以下代码无法编译。我在类 (Foo) 的私有(private)部分中声明了一个结构,并尝试从内部类 (Bar) 中使用它,就像这样。

class Foo {
public:
Foo();
class Bar;

class Bar {
public:
Bar();
Foo::Node createNode();
};

private:
struct Node{
Node(int d) : data(d) {};
int data;
};
};

并且编译器抛出以下错误:

.../Foo.h:9:14: 错误:“Foo”中没有名为“Node”的类型

最佳答案

在引用它之前需要先声明内部类:

class Foo {
class Node;
public:

// ...

关于c++ - 在内部类中使用 struct 时出现编译错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40824005/

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