0

可能重复:
错误:未在此范围内声明“NULL”

我有这段代码,它是在 Visual Studio 中编写的,但我在 Eclipse 中工作,我正试图让它为 Eclipse 编译,我抛出了这个错误

..\heap.cpp:104:10: error: 'NULL' was not declared in this scope

代码:

#include"heap.h"

using namespace std;

template<class T>
Heap<T>::Heap() // constructor
{
    root = NULL;
    size = 0;
}
4

1 回答 1

2

Eclipse 不是编译器,只是一个 IDE。我猜您正在将它与 Visual Studio 之外的其他编译器一起使用,并且系统头文件有些不同,导致您的 VC++ 工作包括不包括 NULL 上的声明<the other compiler>。正如 Martinho Fernandes 所说,您需要包含<stdlib.h>or<cstdlib>或包含这些标题的某些标题。正如另一个问题所说,C++ 11 的方式是<stddef.h>or <cstddef>

于 2012-06-03T17:21:44.803 回答