gpt4 book ai didi

c++ - 如何修复 “error: invalid use of non-static data member '树::root'” error in c++?

转载 作者:行者123 更新时间:2023-12-03 07:37:39 62 4
gpt4 key购买 nike

我在下面的代码:

#include <bits/stdc++.h>
#define DEFAULT_NODE_VALUE 0
using namespace std;


class node{
public:
int val;
node* right = 0;
node* left = 0;
node(int a):val(a){}

};

class tree{
public:
node* root = new node(DEFAULT_NODE_VALUE);
tree(int inp_val){
root->val = inp_val;
}

void inorder_traverse(node* temp = root){

}

};
我想在 temp函数中为 inorder_traverse参数设置默认参数,但是
当我编译以上代码时,编译器显示如下:
22:37: error: invalid use of non-static data member 'tree::root'
17:8: note: declared here
请帮助我解决此问题。提前致谢...

最佳答案

参数默认值不在方法范围内评估。不要使用默认参数,而应使用重载。

void inorder_traverse() {
inorder_traverse(root);
}
void inorder_traverse(node *temp) {
// code
}

关于c++ - 如何修复 “error: invalid use of non-static data member '树::root'” error in c++?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65462696/

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