Heim >Backend-Entwicklung >C++ >Lösen Sie das Problem „Fehler: ‚Klasse' hat kein Mitglied mit dem Namen ‚Variable'' im C++-Code

Lösen Sie das Problem „Fehler: ‚Klasse' hat kein Mitglied mit dem Namen ‚Variable'' im C++-Code

WBOY
WBOYOriginal
2023-08-25 20:43:593151Durchsuche

解决C++代码中出现的“error: 'class' has no member named 'variable'”问题

Lösen Sie das Problem „Fehler: ‚Klasse‘ hat kein Mitglied namens ‚Variable‘“ im C++-Code

Beim Schreiben von C++-Code treten manchmal folgende Probleme auf: „Fehler: ‚Klasse‘ hat kein Mitglied namens ‚Variable‘“ ", diese Fehlermeldung bedeutet, dass bei der Verwendung der Mitgliedsvariablen der Klasse ein Problem vorliegt. In diesem Artikel werden mehrere häufige Ursachen und Lösungen vorgestellt und entsprechende Codebeispiele bereitgestellt.

Der Grund für diesen Fehler kann zunächst eine der folgenden Situationen sein:

  1. Die Mitgliedsvariable ist nicht in der Klasse deklariert:
    In diesem Fall kann der Compiler die Definition der Mitgliedsvariablen nicht finden, was zu … ein Fehler. Die Lösung besteht darin, die Mitgliedsvariable in der Klassendeklaration hinzuzufügen.
class MyClass {
public:
    int myVariable; // 声明成员变量
    void myMethod(); // 声明成员方法
};

void MyClass::myMethod() {
    myVariable = 10; // 使用成员变量
}
  1. Die Mitgliedsvariable in der Klasse ist auf privaten oder geschützten Zugriff eingestellt:
    In diesem Fall kann nicht direkt von außerhalb der Klasse auf die Mitgliedsvariable zugegriffen werden, sodass ebenfalls ein Fehler auftritt. Die Lösung besteht darin, öffentliche Zugriffsfunktionen (Getter und Setter) bereitzustellen, um auf die Mitgliedsvariablen zuzugreifen.
class MyClass {
private:
    int myVariable; // 私有成员变量
public:
    int getMyVariable() const {
        return myVariable; // getter函数
    }
    void setMyVariable(int value) {
        myVariable = value; // setter函数
    }
};

void myMethod() {
    MyClass obj;
    obj.setMyVariable(10); // 设置成员变量的值
    int value = obj.getMyVariable(); // 获取成员变量的值
}
  1. Die Mitgliedsvariablen in der Klasse sind außerhalb der Klasse definiert:
    Dieser Fehler tritt auch auf, wenn die Mitgliedsvariablen der Klasse außerhalb der Klasse definiert und nicht korrekt deklariert sind. Die Lösung besteht darin, die Definition der Mitgliedsvariablen in den Klassenkörper einzufügen.
class MyClass {
public:
    int myVariable; // 成员变量的声明
    void myMethod(); // 成员方法的声明
};

int MyClass::myVariable = 0; // 错误的定义方式

void MyClass::myMethod() {
    myVariable = 10; // 使用成员变量
}

Mit den oben genannten Lösungen können wir das Problem „Fehler: ‚Klasse‘ hat kein Mitglied namens ‚Variable‘“ vermeiden. Beim Schreiben von C++-Code sollten wir auf die Deklaration und Zugriffsrechte der Mitgliedsvariablen der Klasse sowie auf den Definitionsort der Mitgliedsvariablen achten.

Ich hoffe, dass dieser Artikel bei der Lösung verwandter Probleme im C++-Code hilfreich sein wird. Bei weiteren Fragen stehen wir Ihnen gerne zur Verfügung.

Das obige ist der detaillierte Inhalt vonLösen Sie das Problem „Fehler: ‚Klasse' hat kein Mitglied mit dem Namen ‚Variable'' im C++-Code. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn