Path: utzoo!utgpu!jarvis.csri.toronto.edu!rutgers!apple!camarena From: camarena@Apple.COM (Herman J. Camarena) Newsgroups: comp.lang.c++ Subject: Re: Re^2: information hiding Message-ID: <32713@apple.Apple.COM> Date: 27 Jun 89 17:09:16 GMT References: <6031@watdcsu.waterloo.edu> <6590164@hplsla.HP.COM> <1421@cbnewsc.ATT.COM> <7709@spool.cs.wisc.edu> <1827@itivax.iti.org> Organization: Apple Computer Inc, Cupertino, CA Lines: 26 In article <1827@itivax.iti.org> scs@itivax.iti.org (Steve C. Simmons) writes: >If you really wanted to, it would not be particularly difficult to >completely hide the private interface under UNIX. Put the public >parts in as you would normally, but place private in a separate file/dir, >eg, > #include "/usr/include/c++private/your_class_here" >Now make a new group, make the /usr/include/c++private directory and >contents of that group, and make the appropriate c++ utilities sgid >that group. Permit /usr/include/c++private 750, and you have a hidden >area the compiler can see but users cannot. I think this approach does not work very well if you are developing the class. It could work if all your classes are "stable" at that point, of course the compiler should check the two copies to be sure they are consistant. ***************************************************************************** *Herman J. Camarena EMail: camarena@apple.com * *Network Systems Eng. {sun,decwrl,amdahl}apple!camarena * * USA Mail: 10500 No. De Anza Blvd. MS 27-O * * Cupertino, California 95014 * * AppleLink: CAMARENA1 * * Voice: (408)974-5164 * ***************************************************************************** * What you have just read are my opinions. They do not have anything to do * * with Apple's, even if they are good. * *****************************************************************************