'nullptr'之前的预期unqualified-id

时间:2015-12-23 18:18:07

标签: c++ nullptr

我尝试实施BST,但std::nullptr向我显示错误:

  

错误:'nullptr'之前的预期unqualified-id

#include <iostream>
#include <memory>

template <typename T>
class BinTreeNode {
public: 
    BinTreeNode(T key): data {key} {
        left = std::nullptr;
        right = std::nullptr; 
    }
    ~BinTreeNode() {}
    T data;
    BinTreeNode<T>* left;
    BinTreeNode<T>* right;
};

template <typename T>
class BinTree {
public:
    BinTree(){ 
        root = std::nullptr;
    }
    ~BinTree() {}
    BinTreeNode<T>* root;
};

int main(){
    BinTree<int> tree;
}

我尝试在Google上搜索,但没有任何与std::nullptr

相关的信息

1 个答案:

答案 0 :(得分:15)

nullptr, unlike nullptr_t, does not need std:: prefix。这样做的原因是nullptr是一个文字,并没有在命名空间String sql1 = "INSERT INTO transferred (subjectCode,subjectName,credit,prequisite,matricsNo) " + "SELECT b.subjectCode,b.subjectName,b.credit,b.prequisite,s.matricsNo " + "FROM bitm b, student s " + "WHERE b.subjectCode = ? AND b.subjectName = ? AND s.matricsNo = ? "; ps = con.prepareStatement(sql1); ps.setString(1, sbjC); ps.setString(2, sbjN); ps.setString(3,matricsno); ps.executeUpdate (); 中定义,在那里没有定义42。它也不需要使用任何包含指令。

另一方面,std是一种类型,在名称空间nullptr_t中定义,需要包含std