这个c ++代码有什么问题?

BCS*_*BCS 2 c++ syntax-error

我的C++有点生疏,所以......

#include<list>
typedef list<int> foo;
Run Code Online (Sandbox Code Playgroud)

这给了我很好的错误信息:

test.cpp:2:`;'之前的语法错误 代币

我甚至谷歌可以做什么......

Joh*_*itb 14

C++标准库的名称位于命名空间中std

#include <list>
typedef std::list<int> foo;
Run Code Online (Sandbox Code Playgroud)


Nav*_*een 7

您期望列表位于全局命名空间中.但是在std命名空间内定义.因此,您应该使用using namespace std;或expliictly指定命名空间,因为std::list;我个人更喜欢第二个选项.


gre*_*ade 5

list<>在STD命名空间中.这应该工作正常:

#include<list>
typedef std::list<int> foo;
Run Code Online (Sandbox Code Playgroud)