Вектор от обекти
Здравейте. Опитвам се да направя вектор от обекти, но нещо генерално бъркам.
В примера по-долу искам да въведа данни, примерно за три коли: марка, модел и година.
Грешката която получавам е: class "Cars" has no member "push_back"
Малко помощ хич няма да ми е излишна :-)
#include <iostream>
#include <string>
#include <vector>
class Cars {
std::string brand;
std::string model;
int year;
public:
void set_brand(std::string cars_brand) { brand = cars_brand; }
std::string get_brand() { return brand; }
void set_model(std::string cars_model) { model = cars_model; }
std::string get_model() { return model; }
void set_year(int sets_year) { year = sets_year; }
int get_year() { return year; }
};
int main() {
Cars car;
std::string line;
std::vector<Cars> myVector;
for (size_t i = 0; i < 3; i++) {
std::cout << "Enter car brand: ";
std::cin >> line;
car.set_brand(line);
myVector[i].push_back(car.get_brand());
std::cout << "Enter car model: ";
getline(std::cin, line);
car.set_model(line);
myVector[i].push_back(car.get_model());
std::cout << "Enter year of manifacture: ";
getline(std::cin, line);
int value = stoi(line);
car.set_year(value);
myVector[i].push_back(car.get_year());
}
return 0;
}