`

《C++学习笔记》【封装】封装性

    博客分类:
  • C++
阅读更多
以下程序依靠封装,能够保证需要修改数据时才能修改,不准修改数据时就不能修改。
[例1]使用封装以便保护数据
#include <iostream.h>
class integ                //用户建立一个类,以便封装
{
  int j;                //被保护的数据
public:
  integ( ) { j = 6; }                                //构造函数
  int sq() { return j*j; }                        //求平方的函数
  int read() { return j; }                        //读数据的函数
};

void main()
{
  integ  obj;                                                //建立对象并初始化
  cout << obj.read() << endl;                //读数据
  cout << obj.sq( ) << endl;                        //读平方值
}

/* Results:
        6
        36        */

       从以上程序看出,不允许外部函数(如主函数main( ))等直接访问(读取或修改)class integ中的数据成员j,而必须通过调用类class integ的成员函数read( ),才能读取j。如需求其平方值,则须调用成员函数sq( ),但这些函数仍然无法改变数据j。
       封装是指将对象的属性(attribute)(或称数据内容)和作用于这些属性上的操作(operation)(或称函数、行为或服务)集合包装在一起,组成为一个实体。此实体称为“类”。
封装具有以下特点:
1. 用户无法访问所有私有数据和了解函数细节(即函数如何提供服务的细节,也即函数定义)。
2. 用户只须知道函数接口部分所提供的操作功能,即可根据这些操作功能来调用函数,从而访问私有数据。

===============================================
未完待续,转载时请表明出处:http://www.cofftech.com/thread-1386-1-1.html
===============================================
1
3
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics