我有.h文件和.cpp文件的代码。我只是不知道如何在主要使用它。这是给出的,我需要写主要的。
.h文件:
class binary_tree {
public:
class node;
binary_tree();
void addRoot(const std::string &data);
void addLeft(node *nd, const std::string &data);
void addRight(node *nd, const std::string &data);
node *getRoot();
std::string get(node *node);
bool isEmpty();
private:
node *root;
};
struct binary_tree::node {
node(const std::string &data);
std::string data;
node *left, *right;
};
这是我第一次使用二叉树,而最让我困惑的是类中的类。我只需要知道如何在树中添加字符串。
答案 0 :(得分:1)
一些示例用法:
int main()
{
// construct the tree
binary_tree tree;
// add a root
tree.addRoot("this is the root");
// add children to the root
tree.addRight(tree.getRoot(), "left child");
tree.addRight(tree.getRoot(), "right child");
// get the data with either of these:
std::cout << tree.getRoot()->left->data;
std::cout << tree.get(tree.getRoot()->left);
return 0;
}