2D矢量在课堂上调整大小。未在此范围内声明错误

时间:2015-10-26 12:31:28

标签: c++ class vector

编辑:对不起,我输错了向量。这是非工作代码。行'stage_4.resize(20,vector(20,0));'给了我错误。 “stage_4.resize(20);工作,但我无法通过调整两个维度来编译它。另外,我忘了提到我正在使用Code :: Blocks 13.12和Mingw32-gcc。

我对c ++比较陌生,基本上是通过阅读互联网上的教程来学习的,所以我对它的理解存在很大差距。我一直在尝试使用更多类来编写程序,以使事情更加简化,并开始研究使用向量。但是,我在两者的组合中遇到了一些障碍。我创建了一个类,并在其中创建了一个向量。这一切都很好编译,直到我尝试将矢量调整为类的函数中的二维数组。这是相关的代码。

class stage{
public:
std::vector<int> stage_4;

   int setup(int a){
      switch (a){
      case 1:
         stage_4.resize(20, vector<int>(20, 0));
         break;
      }
   }
} 

当我做stage_4.resize(20);它编译没有问题。但是,当我尝试更改数组的两个维度时,就像在此代码中一样,它告诉我“错误:'向量'未在此范围内声明”。我不太确定我做错了什么,因为我说,我对c ++很新。

编辑:我也尝试做stage_4.resize(20,std :: vector(20,0));,然后它告诉我“没有匹配的函数来调用'std :: vector :: resize(int ,std :: vector)'“

1 个答案:

答案 0 :(得分:2)

这是vector

std位于 $tags = "tag1 tag2 tag2"; $Id = 1; $atags = explode(" ",$tags); $mytags = ""; foreach($atags as $tag) { $mytags .= " tag like '%". $tag . "%' or"; } $sql2="select imageId from output_images where bukuId=". $Id." and ".$mytags."der by imageId asc"; echo $sql2; 命名空间中。