Het volgende schijnt illegaal te zijn (en met nieuwere compilers ook nog strafbaar
) :
Ik kan nu twee dingen doen: aa() public maken of geheel class A friend maken van B. Het laatste lijkt mij het beste want dan blijft aa() nog steeds protected zoals bedoeld was. Nog andere mogelijke oplossingen?
En oh, waarom is het bovenstaande eigenlijk illegaal?
C++:
1
2
3
4
5
6
7
8
| class A { protected: void aa() const {} }; class B { friend void A::aa() const; }; |
Ik kan nu twee dingen doen: aa() public maken of geheel class A friend maken van B. Het laatste lijkt mij het beste want dan blijft aa() nog steeds protected zoals bedoeld was. Nog andere mogelijke oplossingen?
En oh, waarom is het bovenstaande eigenlijk illegaal?
[ Voor 6% gewijzigd door Verwijderd op 26-09-2006 16:51 ]