1
已知我正在嘗試實現二叉搜索樹。下面是代碼我迄今:打印()方法不爲類
#include <iostream>
using namespace std;
class BST{
public:
int n,*v,vn;
struct node{
int val;
node *left,*right;
node (int v){ val=v; left=right=0;}
};
node *root;
node *rinsert(node *p,int t){
if (p==0){
p=new node(t);
n++;
}
else if (t<p->val){
p->left=rinsert(p->left,t);
}
else if (t>p->val){
p->right=rinsert(p->right,t);
}
return p;
}
void traverse(node *p){
if (p==0) return;
traverse(p->left);
v[vn++]=p->val;
traverse(p->right);
}
void print(node *p){
if (p==NULL) return;
cout<<p->val;
traverse(p->left);
traverse (p->right);
}
public:
BST(int maxelms,int maxval){ root=0;n=0;}
int size(){ return n;}
void insert(int v){ root=rinsert(root,v); }
void report(int *x){ v=x;vn=0;traverse(root);}
} ;
int main(){
struct node *root;
BST bt(12,25);
bt.insert(12);
bt.insert(10);
bt.insert(25);
bt.insert(7);
bt.insert(11);
bt.insert(8);
bt.insert(4);
bt.insert(3);
bt.insert(20);
bt.insert(23);
bt.insert(24);
bt.insert(1);
bt.Print();
return 0;
}
它不會編譯:問題是,Print()
方法是未知的類:
1>c:\users\...\bst\bst.cpp(54): error `C3861: 'Print': identifier not found`
我該如何解決這個問題?
如果您已經期望降低成本,您爲什麼不花費一點努力來問一個好問題? – Joey
C++區分大小寫。該方法的名稱爲「print」,但最後稱爲「Print」。 – Dirk
它正在訓練@Joey它不是在玩,我需要完成這個任務 –