我在C ++中定义了一个链表。我试图为变量头设置一个NULL值(在Movie_LinkedList
的构造函数中),但我得到了:
movie.h(40):错误C2065:'NULL':未声明的标识符
请注意 除了iostream
任何帮助表示赞赏!
答案 0 :(得分:15)
如上所述,您的程序中未定义NULL
。通常,这是在标准头文件中定义的 - 特别是<cstddef>
或<stddef.h>
。由于您被限制为iostream
,如果您的帖子未从该标头中隐式获取NULL
,则可以使用0
或在C ++ 11中使用nullptr
,这是一个关键字,不需要标题。 (不建议您自己定义NULL
。它有时可能有效,但在技术上是非法的。)
答案 1 :(得分:8)
您应该包含<stddef.h>
或<cstddef>
。
但是,您也可以使用0
或nullptr
。
答案 2 :(得分:2)
不需要图书馆!
位于头文件的顶部,
这样做:
#ifndef NULL
#define NULL (0)
#endif
答案 3 :(得分:1)
使用以下内容包括:
#include <stddef.h>
答案 4 :(得分:1)
NULL
实际上并不是核心C或C ++语言的一部分;它在stddef.h中被定义为0
由于您使用的是C ++,因此首选nullptr
,这是一个关键字,然后输入。 (假设它可用。它是C ++ 11的一部分,所以从技术上讲并非所有编译器都支持它;实际上,你很难找到一个没有的编译器)