import concerns  (C++ visib question)
    Bruno Medeiros 
    brunodomedeirosATgmail at SPAM.com
       
    Sun Jul  9 09:42:33 PDT 2006
    
    
  
Walter Bright wrote:
> Bruno Medeiros wrote:
>> Well, that clearly states that private members should not be invisible 
>> in C++, but I'm having trouble understanding why. He says "Without it, 
>> private out-of-class member declarations become impractical to parse 
>> in the general case." but I don't see how or why, anyone has an 
>> example or clarification?
> 
> I don't understand that, either.
> 
> My best guess is that getting consistent overloading results when 
> changing protections was deemed by Bjarne to be less surprising, but I'm 
> just guessing.
Well the "become impractical to parse in the general case" part makes me 
think it would be a hard-constraint: it would make something broken or 
unfeasible, not just strange or surprising. If you find anything let us 
know.
BTW, I'm only asking this out of curiosity, I don't think it has a 
bearing on D semantics. It seems to me it would be quite feasible for D 
not to consider private overloads in its name lookup. (or any other 
non-acessible names)
Alternatively, we could require that any name overloads have the same 
protection level. It doesn't seem to be a bad solution. It is considered 
good practice that the semantics of overloaded functions are closely 
related, so maybe so should the protection level be.
-- 
Bruno Medeiros - CS/E student
http://www.prowiki.org/wiki4d/wiki.cgi?BrunoMedeiros#D
    
    
More information about the Digitalmars-d
mailing list