0

我是菜鸟,但据我所知,容器包含什么数据类型并不重要。所以这就是我想要做的:

std::deque<list<U32> >     ReqLis;

它的结果是下一个:

error: ISO C++ forbids declaration of 'deque' with no type
error: invalid use of '::'
expected ';' before '<' token

但是当我尝试这样做时,而不是它:

std::list<list<U32> >      ReqList;

没关系..................

问题是我是这么棒的菜鸟还是编译器失败了?我正在使用 gcc/g++

4

3 回答 3

3

你能列出所有的代码吗?代码中命名空间的使用有点松散。

单独标头cpp 参考中的双端队列

#include <deque>
于 2013-10-18T06:34:45.240 回答
3

没有称为 U32 的标准类型,但如果您使用 #include (stdint.h for C),您可以使用 std::uint32_t1,一个 32 位无符号整数,(我假设)这是您想要的。

首先你应该为用户 u32 包含这个头文件

   #include <cstdint>

   std::deque<std::list<std::uint32_t>> ReqList;
于 2013-10-18T07:05:38.697 回答
2

添加以下内容:

#include <list>
#include<deque>
#include<stdint.h>
     std::deque<uint32_t> ReqList;



  #include<deque> is for deque data type
  #include<list>  is for list data type
  #include<stdint.h> is for uint32_t (Integer type with a width of exactly 8, 16, 32, or  
                     64 bits.For signed types, negative values are represented using 2's 
                     complement.
于 2013-10-18T07:24:55.117 回答