Je suis assez nouveau en C++ (java background) et j'essaie d'accéder à un membre d'une classe que j'ai créée mais je reçois toujours un message d'erreur lorsque j'essaie d'appeler un membre de une classe, c'est dire que la variable n'est pas un membre de la classe.C++: Membre de la classe n'étant pas reconnu
Des idées pour lesquelles cela se passe? Je l'ai regardé tant d'autres exemples de personnes avec ce problème, mais aucun d'entre eux me ont aidé à trouver pourquoi
Main.cpp
#include "stdafx.h"
#include "Adressbuch.h"
#include "Kontakt.h"
#include <iostream>
#include <sstream>
using namespace std;
Adressbuch hinzufügen(Adressbuch buch);
Adressbuch löschen(Adressbuch buch);
void auflisten(Adressbuch buch);
int main()
{
bool end = true;
Adressbuch buch;
while (end) {
cout << "Bitte geben sie ein Aktion ein: (hinzufügen(h)/löschen(l)/beenden(b)/auflisten(a))"
<< endl << "zur Zeit gibt es " << buch.adress_buch.size() << " Kontakte" << endl;
if (cin >> "h") buch = hinzufügen(buch);
else if (cin >> "l") buch = löschen(buch);
else if (cin >> "a") auflisten(buch);
else if (cin >> "b") end = true;
else cout << "Error. Ungultig Eingabe." << endl;
}
return 0;
Adressbuch.h
#include "Kontakt.h"
#include <list>
class Adressbuch{
public:
Adressbuch();
~Adressbuch();
void hinzufügen(Kontakt k);
void löschen(Kontakt k);
list<Kontakt> Adressbuch::adress_buch;
};
Adressbuch.cpp
#include "Adressbuch.h"
#include "Kontakt.h"
#include <list>
using namespace std;
Adressbuch::Adressbuch(){
adress_buch;
}
Adressbuch::~Adressbuch(){
}
void Adressbuch::hinzufügen(Kontakt k){
adress_buch.push_back(k);
}
void Adressbuch::löschen(Kontakt k) {
adress_buch.remove(k);
}
Le membre qui me pose problème est la liste adresse_buch. Chaque fois que j'essaie de l'appeler, il dit que ce n'est pas un membre, même si elle est définie dans la classe d'en-tête?
Message d'erreur sur la ligne 19 du principal()
Severity Code Description Project File Line Suppression State
Error C2039 'adress_buch': is not a member of 'Adressbuch'
ConsoleApplication5 c:\users\gregs\documents\visual studio
2015\projects\consoleapplication5\consoleapplication5\consoleapplication5.cpp 19
Vous devez '#include « Kontakt .h "' dans l'en-tête. –
Désolé, j'ai fait dans mon code actuel, j'ai juste oublié de le mettre dans la partie code principal ici – NoName
Et vous avez besoin d'apprendre quelques notions de base C++. – juanchopanza