gpt4 book ai didi

c++ - 如果我使用的是私有(private)结构,我如何将其声明为上面列出的公共(public)成员函数的参数?

转载 作者:行者123 更新时间:2023-11-28 02:59:13 26 4
gpt4 key购买 nike

VS 对“makeEmptyHelper”的“Node*”参数不满意,因为它没有“看到”我猜想的结构。

public:
void makeEmpty(); // make the tree empty so isEmpty returns true
void makeEmptyHelper(Node*);

private:
struct Node {
NodeData* data; // pointer to data object
Node* left; // left subtree pointer
Node* right; // right subtree pointer
};
Node* root; // root of the tree

最佳答案

你不能那样做。我看到您正在尝试完成两件可能的事情:

  • 可以公开访问 makeEmptyHelper 但隐藏 struct Node 的内容。在这种情况下,您应该将 struct Node 的字段声明为私有(private),或者将 struct Node 声明为公共(public)但仅在您的实现文件中定义其成员。

  • makeEmptyHelper 成为另一个成员函数的辅助函数。在这种情况下,将其设为私有(private)。

关于c++ - 如果我使用的是私有(private)结构,我如何将其声明为上面列出的公共(public)成员函数的参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21250598/

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