C++ 向量构造函数使用错误?

C++ 向量构造函数使用错误?,c++,vector,C++,Vector,我最近一直在做一个学校项目,我们被介绍认识了Vectors。我还没有完全掌握它,但我对它们的一般概念是,向量非常像二维数组,可以存储不同类型的数据。我在下面附加了一些代码,但出现以下错误: 没有构造函数“std::vector::vector[with _Ty=std::vector,_Alloc=std::allocator]的实例” 我不太确定我到底错在哪里,但这里是函数的声明和我的代码 //EFFECTS: returns a summary of the dataset as (valu

我最近一直在做一个学校项目,我们被介绍认识了Vectors。我还没有完全掌握它,但我对它们的一般概念是,向量非常像二维数组,可以存储不同类型的数据。我在下面附加了一些代码,但出现以下错误:

没有构造函数“std::vector::vector[with _Ty=std::vector,_Alloc=std::allocator]的实例”

我不太确定我到底错在哪里,但这里是函数的声明和我的代码

//EFFECTS: returns a summary of the dataset as (value, frequency) pairs
//  In the returned vector-of-vectors, the inner vector is a (value, frequency)
//  pair.  The outer vector contains many of these pairs.  The pairs should be
//  sorted by value.
//  {
//    {1, 2},
//    {2, 3},
//    {17, 1}
//   }
//
// This means that the value 1 occurred twice, the value 2 occurred 3 times,
// and the value 17 occurred once
std::vector<std::vector<double> > summarize(std::vector<double> v);
//效果:以(值、频率)对的形式返回数据集的摘要
//在向量的返回向量中,内部向量是(值、频率)
//配对。外向量包含许多这样的对。这对应该是
//按值排序。
//  {
//    {1, 2},
//    {2, 3},
//    {17, 1}
//   }
//
//这意味着值1出现两次,值2出现三次,
//值17出现一次
标准::向量汇总(标准::向量v);
我的代码:

向量汇总(向量v){
排序(v);//按值对向量排序,从最小值到最大值重新排列。
双电流值=v[0];
整数计数=0;
向量={{}};
对于(size_t i=0;i

我感谢你的帮助和对我在这里做错的任何解释。如果需要更多信息,请让我知道。

summary
的返回类型更改为
std::vector
,并返回
vout
而不是
{{vout}
另外,
summary
的更好名称可能是
直方图
vectorvout={{}-这真的符合您的要求吗?这会在向量中放置一个默认构造的对,因此它从其中的一对开始。这有点像你只是在不知道为什么的地方扔牙套。此外,你需要张贴最少的例子,所以家庭作业是没有意义的。中间的所有逻辑都是没有意义的——你可以把函数修剪成两行,重现问题,然后发布。