【发布时间】:2012-02-15 18:35:35
【问题描述】:
我有一个 A 类,它具有公共方法,并被在不同应用程序中实现的 100 个其他类使用。现在我想将这些公共方法设为私有,以便没有新的类可以访问它们,但我希望现有的客户端类仍然可以访问它们。 但我什至不想接触那些客户端类,因为所有者很少允许他们的类中出现任何涟漪。
我检查了
Can I access private members from outside the class without using friends?
friend class with limited access
但所有(并非所有)都要求更改客户端代码。客户端代码不应更改。
一个直接的方法是让所有这些 N 个班级成为朋友,但我有点不舒服。是否有任何模式或可接受的技术(请不要破解)来实现此访问限制? 谢谢,如果这是重复的,我深表歉意。
【问题讨论】:
标签: c++ oop private encapsulation