-, . SO ++, ++ . , , , , , .
, :
Node(char o, Node lNode, Node rNode)
{
oper = o;
pLNode = &lNode;
pRNode = &rNode;
leaf = false;
}
3 , . , , , , . . . . , :
Node(char o, Node *lNode, Node *rNode)
:oper(o), pLNode(lNode), pRNode(rNode), leaf(false)
{ }
:
CalcTree tree;
tree.setRootNode(new Node('+', new Node(1), new Node(534)));
cout << tree.calculateTree() << endl;
. - , . , , Node ( , -):
~Node() {
delete pLNode;
delete pRNode;
}
, null-ify: delete . , CalcTree, :
~CalcTree() {
delete pRootNode;
}
CalcTree, 0! : , , () , , . . , , , ( shared_ptr). - . , . , . Node:
private:
Node(Node const&);
Node& operator=(Node const&);
CalcTree, .
, :
, ++
, , ( , ). , , , , . , , , , , . , , - . , , . ++ , , - .
++
, :
mDataMembergetDataMemberlocalVariable- , 4 (, , . , , !)
java eclipse. Atm emacs ++.
emacs ++ eclipse Java. eclipse Java ( CDT eclipse ++). , ( ), Visual ++ - IDE, . SO : IDE ++ ( google stackoverflow, , ).