C++程序设计简明教程教学课件王晓东第6章数据共享与安全.ppt

C++程序设计简明教程教学课件王晓东第6章数据共享与安全.ppt

ID:50082185

大小:111.50 KB

页数:22页

时间:2020-03-08

C++程序设计简明教程教学课件王晓东第6章数据共享与安全.ppt_第1页
C++程序设计简明教程教学课件王晓东第6章数据共享与安全.ppt_第2页
C++程序设计简明教程教学课件王晓东第6章数据共享与安全.ppt_第3页
C++程序设计简明教程教学课件王晓东第6章数据共享与安全.ppt_第4页
C++程序设计简明教程教学课件王晓东第6章数据共享与安全.ppt_第5页
资源描述:

《C++程序设计简明教程教学课件王晓东第6章数据共享与安全.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第6章数据共享与安全6.1作用域与生存期6.2静态成员6.3友元6.4数据安全6.1作用域与生存期作用域是指变量、对象以及对象的数据成员等实体在程序中的有效范围。只有位于实体的作用域中,才有可能访问该实体。生存期是指实体在程序运行过程中的生命周期。如果实体的生命周期结束,则该实体将会消亡,并由系统自动回收其所占据的内存等资源。作用域1.块作用域块是一个由一对花括号({})形成的程序段。局部变量/对象具有块作用域,从定义处开始,到所在块的结束处(})为止。例如intfun1(inta)//函数fun1{…

2、intb,c;//局部变量b、c…{intd;//定义在复合语句中的局部变量d…}}在不同的块中可以分别定义同名的变量/对象,它们代表不同的局部变量/对象,在内存中占据不同的空间,互不干扰。形参也是局部变量,在main函数中定义的变量也是局部变量。2.类作用域类的作用域从类的定义时class后面({)开始,到类的结束处(})为止。C++语言把类的所有成员作为一个集合,类的数据成员和成员函数都在该类的作用域内。3.文件作用域在块或者类的外部定义的变量或者对象,通常称为全局变量或者全局对象。C++语言规定全

3、局变量/对象具有文件作用域,从定义处开始,到所在文件的结束处为止。全局变量/对象在其作用域范围内,可以被本文件其他函数共同使用。作用域屏蔽#includeinta=1;//全局变量intmain(){inta=2;//局部变量cout<<"a="<

4、间必须在文件作用域内定义,并且允许嵌套定义。同一个名字空间中的标识符不得同名,不同名字空间中的标识符可以同名。可以用两种方法引用一个名字空间中的标识符,第一种是作用域运算符(::),另一种是using声明。第一种方法与前面介绍的类名::的方式非常相似,using声明则能够把某个名字空间中的所有标识符,都引入到当前作用域内。using的使用形式是:usingnamespace空间名;6.2静态成员静态成员描述和管理类的公共信息。静态成员包括静态数据成员和静态成员函数。静态数据成员用于描述和存储类的公共信息

5、,它独立于具体的对象,由类进行维护和管理。静态数据成员class类名{……private://静态数据成员声明static类型静态数据成员名;};//静态数据成员定义及初始化类型类名::静态数据成员名=初值;静态成员函数class类名{public:static类型静态成员函数名(形参表);//静态成员函数声明……};类型类名::静态成员函数名(形参表)//静态成员函数定义{……}说明静态成员函数不能直接访问普通数据成员,也不能调用普通成员函数。静态成员函数的调用方式可以采用对象.或者对象指针->的形式

6、,表明静态成员函数为类中所有对象所共享。除此之外,还可以用类名::的方式调用,表明它独立于具体的对象。6.3友元友元函数就是指该函数被声明为某个类的友元。声明友元函数的语法形式为:class类名{public:friend类型友元函数名(形参表);//友元函数声明friend类型类名::友元函数名(形参表);//友元函数声明……};友元类如果在A类中用friend声明B类为友元,则B类就成为A类的友元类。其语法形式为:classA{……friendB;//友元类声明……};6.4数据安全C++语言保证数

7、据安全的主要做法是,设置形形色色的常量,使得在程序运行过程中无法修改它们的值,即允许访问,但不得赋值。声明常量的语法均以const为核心。常引用const类型&引用名=初值;如果某个引用被声明为常引用,在程序中就不能通过常引用,修改它所引用的变量或者对象。常引用通常作为函数的形参,使得被调函数无法通过引用形参,修改主调函数中实参变量的值。常指针1.指向常量的指针const类型*指针变量名;2.常量指针类型*const指针变量名=初值;3.指向常量的常量指针const类型*const指针变量名=初值;常对

8、象const类名对象名(参数表);某个对象被声明为常对象并初始化以后,该对象中的所有数据成员的值都不能被修改。常对象不能调用普通的成员函数,只能调用常成员函数。常成员1.常数据成员class类名{private:const类型数据成员名;…};常成员函数class类名{public:类型成员函数名(形参表)const;…};类型类名::成员函数名(形参表)const{…}

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。