what is wrong with this code?
#include<bits/stdc++.h>
using namespace std;
class Node{
public:
int data;
Nodeleft;
Noderight;
Node(int d){
data = d;
left = NULL;
right = NULL;
}
};
NodebuildTree(){
int d;
cin>>d;
if(d==-1){
return NULL;
}
Noderoot = new Node(d);
root->left = buildTree();
root->right = buildTree();
return root;
}
void printRight(Noderoot){
if(root==NULL){
return;
}
cout<data<<" “;
printRight(root->right);
//cout<data<<” ";
return;
}
int main(){
Noderoot=buildTree();
printRight(root);
cout<<endl;
return 0;
}