Я работаю над рабочим листом, который у меня есть для университета, и вопрос спрашивает меня: «Разрешить пользователю вводить 10 цифр с клавиатуры в массив», однако нам сказали, что нам нужно использовать классы и векторы для этой задачи. Когда я запускаю свой код, я получаю сообщение об ошибке: «Выражение: векторный индекс вне диапазона» может кто-нибудь помочь?Векторы C++ в классе
Array.h
#include <iostream>
#include <vector>
using namespace std;
class Array
{
private:
vector<int> lists;
public:
void fillArray();
void printForwards();
void halfandHalf();
void shiftArrayRight();
Array();
Array(vector<int>);
};
Array.cpp
#include "Array.h"
Array::Array()
{
lists[10];
}
Array::Array(vector<int> lists)
{
this->lists = lists;
}
void Array::fillArray()
{
for (int i = 0; i < 10; i++)
{
cin >> lists[i];
}
}
void Array::printForwards()
{
for (int i = 0; i < 10; i++)
{
cout << lists[i];
}
}
Source.cpp
#include <iostream>
#include "Array.h"
using namespace std;
int main()
{
Array list1,list2;
//fill array 1
list1.fillArray();
//fill array 2
list2.fillArray();
// print array 1
list1.printForwards();
//print array 2
list2.printForwards();
system("pause");
return 0;
}
Заранее спасибо
Что вы ожидаете 'списки [10];' делать? – tkausl
Я попытался разобраться с проблемой, поэтому я отправил сюда. – Darision
Я думал, что он автоматически инициализирует каждый экземпляр массива класса до 10 (0-9) – Darision