У меня есть класс с именем клиента ведьма идет как этотКак получить доступ к элементу класса внутри карты C++
class Client
{
public:
Client(unsigned int id, std::string nom, std::string prenom, float solde);
unsigned int getId() const;
std::string getNom() const;
std::string getPrenom() const;
float getSolde() const;
bool operator< (Client& client);
friend std::ostream& operator<< (std::ostream& os, const Client& client);
bool diminutionSolde(float diminution);
private:
unsigned int id_;
std::string nom_;
std::string prenom_;
float solde_;
};
и я также есть класс статьи, который идет как так
class Article
{
public:
Article(unsigned int id, std::string nom, float prix);
unsigned int getId() const;
std::string getNom() const;
float getPrix() const;
bool operator< (Article& article);
friend std::ostream& operator<< (std::ostream& os, const Article& article);
private:
unsigned int id_;
std::string nom_;
float prix_;
};
У меня также есть другой класс (который я не думаю, что надо показать), что в качестве карты в качестве attribut,
std::map<Client , BasketArticles* > mapClientPanier_;
который BasketArticles в виде списка < T> как атрибут;
Прежде всего, нужно ли использовать указатель на клиенте?
Тогда, как я получить доступ к клиентам статьи, по одному для потоковой передачи их на экране, как станд :: соиЬ < <
и/или дуться имя клиента и статьи он есть в новая карта (которая будет в алфавитном порядке), а затем std :: cout < < все это.
-> и не могли бы вы помочь мне с проблемой доступа, это для меня важно, поскольку мне нужно сделать это в нескольких других методах(). –
Ваш вопрос «как мне получить доступ к статьям клиентов» ничего не значит. У вас есть std :: map. Доступ к содержимому вашей std :: map не отличается от доступа к содержимому любой другой std :: map. Используйте итераторы, begin(), end(); или find(); или любой другой из обычных методов std :: map. \ –