C++ 向量构造函数使用错误?
我最近一直在做一个学校项目,我们被介绍认识了Vectors。我还没有完全掌握它,但我对它们的一般概念是,向量非常像二维数组,可以存储不同类型的数据。我在下面附加了一些代码,但出现以下错误: 没有构造函数“std::vector::vector[with _Ty=std::vector,_Alloc=std::allocator]的实例” 我不太确定我到底错在哪里,但这里是函数的声明和我的代码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
//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={{}-这真的符合您的要求吗?这会在向量中放置一个默认构造的对,因此它从其中的一对开始。这有点像你只是在不知道为什么的地方扔牙套。此外,你需要张贴最少的例子,所以家庭作业是没有意义的。中间的所有逻辑都是没有意义的——你可以把函数修剪成两行,重现问题,然后发布。