c++中类的公有和私有初探01
2014-04-24 15:28
78 查看
先来一段程序:
在上面这个程序中,由于Cat类中的成员函数weight被声明成了公有成员,那么我们就可以在主窗口中首先创建一个Cat类的对象(cat),并利用.运算符就可以直接调用weight这个数据成员了。
若把上面程序中的改成private。此时我们就无法在由Cat类所声明的对象中调用这个weight成员。只有通过在类中设置一个公共的接口函数,才能实现对weight的访问,如下例:
利用类中的公共接口函数,我们就可以访问调用类的私有成员。好处就是:在类的公共接口函数中,我们可以对输入的具体值进行限定,从而提高代码的安全性,防止造成错误的输入与输出。
在一般情况下,我们可以将类的数据成员设置为私有的,然后调用类中的公共该接口函数来访问他们。这样做的好处是将数据的赋值与读取分开操作。比如说上例里面,我们就将数据的赋值函数设置成setWeight(int),将数据的读取函数设置成print()。这样的好处就是赋值函数不需要考虑读取函数是如何工作的,读取函数中的代码改变也不会影响到相应的赋值函数。那么这样就提高了代码的可重用性。另外,由于将数据成员进行了私有化,那么各个对象不可以直接访问并修改数据。比如说上例中想要直接修改weight的数值就是不合法的,只有通过公共的接口函数才能访问并且修改到类里面的私有数据成员(weight)。
这样的设置时程序更容易维护,并且可避免一些不应有的错误
在上面这个程序中,由于Cat类中的成员函数weight被声明成了公有成员,那么我们就可以在主窗口中首先创建一个Cat类的对象(cat),并利用.运算符就可以直接调用weight这个数据成员了。
若把上面程序中的改成private。此时我们就无法在由Cat类所声明的对象中调用这个weight成员。只有通过在类中设置一个公共的接口函数,才能实现对weight的访问,如下例:
利用类中的公共接口函数,我们就可以访问调用类的私有成员。好处就是:在类的公共接口函数中,我们可以对输入的具体值进行限定,从而提高代码的安全性,防止造成错误的输入与输出。
这样的设置时程序更容易维护,并且可避免一些不应有的错误
相关文章推荐
- C++继承:公有,私有,保护
- C++继承:公有,私有,保护
- C++继承:公有 私有 保护
- C++ 公有继承、保护继承、私有继承的区别
- C++继承:公有,私有,保护
- C++ 公有继承,私有继承和保护继承
- C++继承:公有,私有,保护
- 『C/C++』公有继承,私有继承,和保护继承
- C++继承:公有,私有,保护
- C++继承:公有,私有,保护
- C++继承:公有,私有,保护
- C++ 公有继承,私有继承,保护继承
- C++公有保护私有继承方式权限
- C++继承:公有,私有,保护
- C++ 公有继承、保护继承和私有继承中类成员的访问权限的控制
- C++中有私有继承和公有继承之分
- C++继承:公有,私有,保护
- 从零开始学C++之继承(一):公有/私有/保护继承、overload/overwrite/override之间的区别
- C++继承:公有,私有,保护
- C++ 公有继承、保护继承和私有继承中类成员的访问权限的控制