при попытке вставить данные в вектор для структуры типа данных возвращается неправильный размер - PullRequest
0 голосов
/ 16 ноября 2018

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

struct data{
    int cID;
    int arrival;
    int service;
};

vector<data> myvect;

int main()
{
    data d1;

    myvect.push_back(data());

    for(int i = 0; i < 3 ; i++){
        int i1 = i + 1;
        int i2 = i + 2;
        int i3 = i + 3;

        i1 >> d1.cID;
        i2 >> d1.arrival;
        i3 >> d1.service;

        myvect.push_back(d1);
    }
   cout << myvect.size();

    return 0;
}

Ответы [ 2 ]

0 голосов
/ 16 ноября 2018

Вы помещаете инициализированный элемент по умолчанию в вектор перед циклом.

0 голосов
/ 16 ноября 2018

Помимо операторов сдвига битов (например, i1 >> d1.cID;), которые не имеют никакого эффекта, код в порядке и вставляет всего четыре элемента в вектор.

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