On Friday, 11 May 2018 at 04:43:09 UTC, KingJoffrey wrote:
On Friday, 11 May 2018 at 03:32:25 UTC, Uknown wrote:

`private` is for outside the module. Within the module, private is not applied because D wanted to avoid C++'s `friend` functions.

'private' is "meant" to be part of the implementation of 'the class'.

Whereas D makes it part of the implementation of 'the module' ( which is an even higher level of abstraction).

This is an abomination!

A class should have the capacity to protect its attributes/methods - even from the module.

You can use D private with Java-like "only for members functions" meaning by putting it alone in it's module, if you want.

Reply via email to