看来我的目的基本上达到了,虽然由于习气的原因,可能说的话不大妥当——在此向大家
赔罪了。
to Ale.兄:
在我的理解中,用const修饰的、但是值可以变化的变量,似乎就是别人无法访问的全局
变量——至少在效果上是一样的。如果我的理解有偏差,还请您斧正。
在面向对象的概念中,有“封装”一词。它的作用无非是将某些细节隐藏起来,以控制外
部对对象的影响方式。但是,封装并不能有效的控制来自内部的“家贼”——如果我们设置
了某个属性VarA,让外部只能通过SetVarA过程来设置私有域FVarA的值,这样我们就可以通
过SetVarA过程进行范围检查以及权限检查等等操作。但是,这样做并不能阻止SetVarA以外
的其它方法中,跳过SetVarA而直接改变FVarA——这说明,现有的面向对象语言中(至少在
Delphi中),仍然不能有效的控制访问权限(即将访问权限细化到每个方法,而不是仅仅在
类的级别上进行控制)。“友类”这种概念,则是为了在某种程度上解决封装带来的附加问
题而出现的。
我之所以要说上面的话,就是想说明一个问题——类似于OO中的封装以及过程内部的“静
态变量”这些东西,无非是想进行某种形式的信息隐藏。而隐藏的目的,则是为了避免编程
中可能出现的混乱局面。但是,由于各种编程语言本身的限制,我们一般都达不到随心所欲
的效果。但愿这些问题能通过我的信息节点对象得到解决,呵呵。(有没有人愿意帮我的忙
啊...)
程序代码是程序员的逻辑思维映射到具体编程语言的结果,而逻辑思维的形成,又来自于
编码者(或者是系统设计者)对客观事物的认识。上梁正了,只要再加上合适的规范,下梁
自然不会歪了。擒贼要擒王。
to ego兄:
我何德何能,能和唐僧相提并论?太过奖了啊。
呵呵,小说比现实好看,由小说再次幻化出来的搞笑篇就更加好看了——这是很正常的。
不过,如果您看看《玄奘传》,也许会学到一些别的东西。
ps:
竟然看到了只在《大富翁论坛精华2000》中出现过的茶叶蛋兄!开心!