C ++我的类构造函数的默认参数是什么?

时间:2015-11-30 05:41:04

标签: c++

我是来自C和Java的C ++新手。我对C基础知识有很好的理解,但是我遇到了C ++构造函数的问题。我有一个名为Node的类,我想要一个带整数的构造函数。我不希望创建一个没有整数的Node。因此我有:

class Node
{
    // Let BST directly access members.
    friend class BST;
    public:
        // Constructor.
        Node(int i);
        int getValue()
        {
            return value;
        }
    protected:
        int value;
        Node *left;
        Node *right;
};

// Constructor
Node::Node(int i)
{
    value = i;
}

问题是编译器无法找到默认构造函数,因为我还没有(并且不想)为参数设置默认值。我理解这可行:Node(int i = 0);但问题是i可能是任何可能的整数。解决这个问题的最佳方式是什么?

感谢。

修改

我创建节点的唯一方法是这样的:Node new_node(i);其中i是一个int。

0 个答案:

没有答案