C++ nested classes, access fathers variables
c++, class, nested, parent
Solution
Despite that you declared class B inside of A, classes A and B are still completely independent. The only difference is that now to refer to B, one must do A::B.
For B to access A's stuff, you should use composition or inheritance. For composition, give B a reference to an object of A, like so:
class B {
public:
B(const A& aObj) : aRef(aObj) {
cout << aRef.a << endl;
}
private:
const A& aRef;
};
For inheritance, something like this:
class B: public A { // or private, depending on your desires
B() {
cout << a << endl;
}
}
Problem
The title already says a lot, but basically what i want to do is the following(Example): I have a class called A, and another class inside a called B, like so: ``` class A { int a; class B { void test() { a = 20; } }; }; ``` As you can see my goal is for class B to have access to class A, as it is a nested class. Not this wont work, because B doesn't have access to A, but how can it get access? Thank You