Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/133.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++;:未被认可的班级成员 我对C++(java后台)相当陌生,我试图访问我创建的类的成员,但是在试图调用类成员时,我总是得到错误消息,它说变量不是类的成员。< /P>_C++_Class_Member - Fatal编程技术网

C++;:未被认可的班级成员 我对C++(java后台)相当陌生,我试图访问我创建的类的成员,但是在试图调用类成员时,我总是得到错误消息,它说变量不是类的成员。< /P>

C++;:未被认可的班级成员 我对C++(java后台)相当陌生,我试图访问我创建的类的成员,但是在试图调用类成员时,我总是得到错误消息,它说变量不是类的成员。< /P>,c++,class,member,C++,Class,Member,知道为什么会这样吗?我看过很多其他有这个问题的人的例子,但没有一个能帮我找到原因 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(Ad

知道为什么会这样吗?我看过很多其他有这个问题的人的例子,但没有一个能帮我找到原因

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;
#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);
}

首先是一个最小的、完整的可验证示例,该示例只包含触发错误所需的代码:

#include <list>
using namespace std;

class Adressbuch
{
public:
    list<int> Adressbuch::adress_buch;
};
int main()
{
    Adressbuch buch;

    buch.adress_buch.size();
    return 0;
}
或者更好

#include <list>

class Adressbuch
{
public:
    std::list<int> adress_buch;
};
int main()
{
    Adressbuch buch;

    buch.adress_buch.size();
    return 0;
}
#包括
类地址
{
公众:
标准:列表地址;
};
int main()
{
地址buch-buch;
buch.address_buch.size();
返回0;
}

因为删除了

你需要在代码中包含“KoTakt.h”/Cuth.Suff.在我的实际代码中,我忘记了把它放在主代码部分,你需要学习一些基本的C++。函数的调用不会造成任何错误,只是那个成员AdRSSBuBuh,这是唯一一个让我好奇的错误,什么是
address\u buch在构造函数中露营?和
列表地址buch::address\u buch,则不需要
地址buch::
。感谢您的示例,我们将在将来使用此实践,并且添加std::cast似乎可以为我修复错误
#include <list>
using namespace std;

class Adressbuch
{
public:
    list<int> Adressbuch::adress_buch;
};
int main()
{
    Adressbuch buch;

    buch.adress_buch.size();
    return 0;
}
list<int> Adressbuch::adress_buch;
#include <list>
using namespace std;

class Adressbuch
{
public:
    list<int> adress_buch;
};
int main()
{
    Adressbuch buch;

    buch.adress_buch.size();
    return 0;
}
#include <list>

class Adressbuch
{
public:
    std::list<int> adress_buch;
};
int main()
{
    Adressbuch buch;

    buch.adress_buch.size();
    return 0;
}