Object Oriented Programming with D Language. Private access specifier.

Robert Fraser fraserofthenight at gmail.com
Wed Aug 20 16:28:00 PDT 2008


DF wrote:
> Why can private fields be accessed from other methods or classes in the same module?
> 
> If I wanted to access them from the same module I would make them package public.

It's a feature -- a replacement for "friend" in C++. The general idea of 
a module is that it is an autonomous code unit controlled by a single 
developer/team and if you're accessing a private function in the module, 
you have a good reason to. It's all the same file, so if you're changing 
something that accesses a private member, you can change the private 
implementation as well.

"package" isn't implemented (sadly -- I find it very useful in Java so 
that a package has only a single public API).



More information about the Digitalmars-d mailing list