Предположим, я делаю библиотеку книг на C ++ следующим образом:
#include <iostream>
#include <string>
#include <vector>
class Book
{
public:
Book(string name, string author)
};
Простой, просто конструктор, теперь я создаю вектор из Book
и pu sh книг назад:
int main()
{
vector<Book> books;
books.push_back(Book("Gatsby", "Fitzgerald"));
Но когда я пытаюсь распечатать какого-нибудь участника (имя или автора):
cout << books[0].name << endl;
return 0;
}
Мой компилятор мальчика злится:
error: ‘__gnu_cxx::__alloc_traits >::value_type {aka class Book}’ has no member named ‘name’
cout << books[0].name << endl;
Я относительный новичок, такой подход вообще имеет смысл? И если да, то что я сделал не так?
Спасибо!