将C#语句移植到C ++

时间:2017-08-23 00:50:29

标签: c# c++

我想将此C#(Visual Studio)语句移植到C ++ 98。无法使用C ++ 11 copy_if。这是C#代码:

List<Node> nodes = tree.Nodes.FindAll(n => n.Leaf == false && n.Left == null && n.Right == null);

如何使用for_eachfind_if移植? 我从这行代码开始:

find_if(tree->getNode().begin, tree->getNode().end, TopNode(tree->getNode()[index]));

其中TopNode定义为:

struct TopNode
{
    explicit TopNode(Node *n) : MyNode(n) { }
    inline bool operator()(const Node *m) const { return ((m->getLeaf() == false && m->getLeft() == NULL && m->getRight() == NULL)); }

   private:
      Node *MyNode;
};

有人可以帮忙写这个循环吗?提前感谢您的时间和建议。

0 个答案:

没有答案