Ich bin super neu in Klassen und immer noch mein Gehirn um, wie sie arbeiten. Jede Hilfe/Beratung/Hinweise-> werden geschätzt!Lernklassen C++ - Werte in einem Array von Klassen, die in einer anderen Klasse verschachtelt sind, können nicht festgelegt werden.
Ich habe zwei Klassen. Innerhalb der zweiten Klasse befindet sich ein Array der ersten Klasse. Ich versuche, den privaten Mitgliedsvariablen, die im Array der ersten Klasse enthalten sind, Werte zuzuweisen.
Ich erhalte diese Fehlermeldung beim Kompilieren:
hw2Test.cpp: In member function 'void bar::set(int)':
hw2Test.cpp:11:7: error: 'int foo::x' is private
int x;
^
hw2Test.cpp:34:12: error: within this context
foodoo[0].x = x;
^
Hier ist der Code:
#include <iostream>
using namespace std;
class foo
{
public:
private:
int x;
};
class bar
{
public:
void set(int x);
private:
foo foodoo[1];
};
int main()
{
bar tar;
tar.set(1);
return 0;
}
void bar::set(int x)
{
foodoo[0].x = x;
}
Es gibt eine dritte Option, bieten Accessormethoden. – bodangly
Mit Zugriffsmethoden, meinst du, ein FX innerhalb der Bar anzurufen, die ein FX innerhalb von foo aufruft, damit ich foo's freche Bits erreichen kann? –
@BuckWheat ja, genau –