为什么要提供公共访问的功能,它使一个成员变量的私人?答案是:“封装”。
封装
在现实生活中,它是常见的使用一些不知道它是如何工作的。例如,你的电视遥控器提供的按钮,让你做的事情一样,把你的电视和关闭和调整音量。然而,如何实现远程实际上是隐藏。这很有用,因为它允许你使用远程无需担心的细节为什么它或它是如何实现的。如果侏儒闯入你的房子在半夜,用新的替换你的电视遥控器内部的(但兼容)的技术,你可能没有注意到的。
封装的思想是隐藏的细节如何实现而暴露给用户一个接口。这允许用户使用的项目,而不必担心如何实施。
在C++中,访问说明符允许我们在我们的类实现封装。这通常是通过一类的私有成员变量,并提供公共职能(经常访问函数)允许用户与班主任工作。虽然这可能似乎比直接向公众提供更多负担,事实上这样做提供了一些非常有用的好处,帮助鼓励类的可重用性和可维护性。
也许最重要的是,有时会发现一类的初步实施太慢或使用太多内存,和一个更复杂的解决方案是必要的。封装的实施意味着一个类的实现可以完全改变,只要接口不变,类的使用者不必担心所有的变化!
Consider this simple example:
class Change
{
public:
int m_nValue;
};
int main()
{
Change cChange;
cChange.m_nValue = 5;
std::cout << cChange.m_nValue << std::endl;
};
尽管该项目工作的很好,如果我们决定重新命名m_nvalue会发生什么?我们也破坏了我们的计划!封装了我们改变我们的班级没有打破所有的代码使用它们的能力。
这里是封装的版本的这类使用访问函数来访问m_nvalue: