Talk About Network

Google


Register and Login
Nick
Password
Register create new account Sign up is FREE and you can post replies, new topics, bookmark posts and more!
Recover lost password


Programming > C++ Moderated > Re: Nested clas...
Latest [ Topics | Posts ] Archive Post A New Topic Post a Reply
<< Topic < Post Post 4 of 8 Topic 9586 of 9828
Post > Topic >>

Re: Nested class accessing private member of parent

by David Pol <david@[EMAIL PROTECTED] > May 10, 2008 at 02:08 PM

On 10 mayo, 05:26, sat_a...@[EMAIL PROTECTED]
 wrote:
> In the following  code, nested class B is accessing private member of
> A. Is this allowed? This code compiles on Comeau online test compiler
> and Visual Studio 2005.
>
> class A
>
> {
>     class B
>    {
>        A* a;
>        int bVal;
>        B() { bVal = a->aVal; } // This compiles
>     };
>
> private:
>
>     int aVal;
>
> };
>
> int main(int argc, char** argv) {}

Hello,

According to [class.access.nest]/1 from the standard:

"The members of a nested class have no special access to members of an
enclosing class, nor to cl***** or functions that have granted
friend****p to an enclosing class; the usual access rules (clause 11)
shall be obeyed. The members of an enclosing class have no special
access to members of a nested class; the usual access rules (clause
11) shall be obeyed."

But there is a defect re****t related to this:
http://www.open-std.org/jtc1/sc22/wg21/docs/cwg_defects.html#45.
On
compilers that implement the proposed resolution of this defect re****t
[1], nested cl***** are full members of the enclosing class and, as
such, they have full access to it.

[1] g++ is one of them: http://gcc.gnu.org/bugs.html

Regards,
David

-- 
      [ See http://www.gotw.ca/resources/clcm.htm
for info about ]
      [ comp.lang.c++.moderated.    First time posters: Do this! ]
 




 8 Posts in Topic:
Nested class accessing private member of parent
sat_andi@[EMAIL PROTECTED  2008-05-09 21:26:07 
Re: Nested class accessing private member of parent
Pavel Minaev <int19h@[  2008-05-10 06:14:29 
Re: Nested class accessing private member of parent
marlow.andrew@[EMAIL PROT  2008-05-10 14:07:54 
Re: Nested class accessing private member of parent
David Pol <david@[EMAI  2008-05-10 14:08:31 
Re: Nested class accessing private member of parent
Bart van Ingen Schenau &l  2008-05-10 14:08:09 
Re: Nested class accessing private member of parent
=?ISO-8859-1?Q?Daniel_Kr=  2008-05-10 14:13:29 
Re: Nested class accessing private member of parent
Pete Becker <pete@[EMA  2008-05-11 16:40:25 
Re: Nested class accessing private member of parent
=?ISO-8859-1?Q?Daniel_Kr=  2008-05-12 09:28:20 

Post A Reply:
  Go here to Signup

AddThis Feed Button


About - Advertising - Contact - Frequently Asked Questions - Privacy Policy - Terms of Use - Signup

Contact
tan12V112 Thu Jul 24 15:53:30 CDT 2008.