在BST.h文件我有:C++:我是否正確定義私有函數和公共函數的主體?
class node
{
public:
node* left;
node* right;
int key;
}
class BST
{
public:
void add(int newKey);
private:
node* root;
node* addHelper(node* nd, int newKey);
};
我然後實現在bst.cpp文件中添加和addHelper功能:
#include "BST.h"
public void add(int newKey){
addHelper(root,newKey);
}
node* BST :: addHelper(Node* nd, int newKey)
{
//do something..
}
我是否還需要定義我的public add(int newKey)
功能: void BST :: add(int newKey)
在bst.cpp中?
是的。現在,你聲明'BST :: add',但是定義':: add'。 –
除了Jerry Coffin所說的,「公共」在那裏沒有地方。這是一個語法錯誤。 – juanchopanza