我对实际编程中这些东西的实际使用感兴趣.我无法想象任何受保护类成员真正需要的例子(我的意思是当我们不能用’private’替换’protected’时).
解决方法 一个类有两个API – 一个用于实例化它并使用结果对象的代码,另一个用于子类.第一个API是公共成员,第二个API是公共成员和受保护成员.有一些 *** 作和数据可供子类访问,“普通用户”无法访问.
作为一个具体的例子,想象一下Windows GUI类库.它包装和隐藏普通的旧windows API.窗口代表一个窗口,并且有一个HWND,它是底层的windows窗口句柄.它隐藏了Window类用户的HWND,因为它不属于他们的业务(或者如果它们可以使用它,它只通过只读访问器公开它).但是Window的子类(如FrameWindow或EditControl)可以直接访问HWND:
class Window{public: voID Show(); // Example public APIprotected: HWND m_hwnd;};总结
以上是内存溢出为你收集整理的在C中实际使用’protected’说明符全部内容,希望文章能够帮你解决在C中实际使用’protected’说明符所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)