我在vc下试验 stl
#include <list>list<int> test
但是编译出错,说list未定义和"type 'int' unexpected"
这是怎么回事

解决方案 »

  1.   

    我知道了list前要加std::但是我不知道为什么,高人帮着将一讲
      

  2.   

    list是标准C++的函数库,标准C++库中的所有组件都是在叫std的名字空间中声明和定义的。标准C++引入名字空间就是为了解决全局名字空间污染问题。
    1.要使用名字空间std中的成员,最简单的解决方案就是在#include指示符后面加上using指示符:
    using namespace std;
    这种方式使名字空间std中的全部成员在后面都可见。
    2.另一种方式是用using声明,即如下:
    using std::list;
    using std:string;
    3.第三种就如您所示,在成员前冠上其所在名字空间,如:
    std::list
    std::string
      

  3.   

    liubear() 说的很详细
    另:类名称也是一个具有特殊功能的名字空间