Неправильный векторный конструктор? - PullRequest
0 голосов
/ 18 января 2020

В последнее время я работаю над школьным проектом, и нас познакомили с Векторами. Я еще не полностью освоил его, но мое общее представление о них заключается в том, что векторы во многом похожи на двумерные массивы, которые могут хранить различные типы данных. Ниже приведен код, но я получаю следующую ошибку:

нет экземпляра конструктора "std :: vector <_Ty, _Allo c> :: 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);

Мой код:

vector<vector<double> > summarize(vector<double> v) {
    sort(v); //Sorts vector by values, rearranging from smallest to biggest.
    double currentVal = v[0];
    int count = 0;
    vector<pair<double,int>>vout = { {} };
    for (size_t i = 0; i < v.size(); i++) {
        if (v[i] == currentVal) {
            count++;
        }
        else {
            vout.emplace_back(make_pair(currentVal, count));
            currentVal = i;
            count = 1;
        }
    }
    vout.emplace_back(make_pair(currentVal, count));
    return { {vout} }; //Error here
}

Я ценю вашу помощь и любые объяснения того, что я делаю здесь неправильно. Если вам нужна дополнительная информация, пожалуйста, дайте мне знать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...