【2017年整理】C++语言程序设计实验答案_数据的共享与保护.doc

【2017年整理】C++语言程序设计实验答案_数据的共享与保护.doc

  1. 1、本文档共29页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
【2017年整理】C语言程序设计实验答案_数据的共享与保护

实验05 数据的共享与保护(2学时) (第5章 数据的共享与保护) 一、实验目的 (1) 观察程序运行中变量的作用域、生存期和可见性。 (2) 学习类的静态成员的使用。 (3) 学习多文件结构在C++程序中的使用。 二、实验任务 5_1 运行下面的程序,观察变量x、y的值。 //lab5_1.cpp #include iostream using namespace std; void fn1(); int x=1,y=2; int main(){ cout开始...endl; coutx=xendl; couty=yendl; cout在main()中求x和y的值...endl; int x=10,y=20; coutx=xendl; couty=yendl; cout进入函数fn1()...endl; fn1(); cout返回main()endl; coutx=xendl; couty=yendl; return 0; } void fn1(){ int y=200; coutx=xendl; couty=yendl; } 5_2 实现客户机(CLIENT)类。 声明字符型静态数据成员ServerName,保存其服务器名称;声明整型静态数据成员ClientNum,记录已定义的客户数量;定义静态函数ChangeServerName()改变服务器名称。在头文件client.h中声明类,在文件client.cpp中实现,在文件lab5_2.cpp中测试这个类,观察相应的成员变量取值的变化情况。 三、实验步骤 1.(验证)运行lab5_1.cpp程序,观察程序输出。 全局变量的作用域为文件作用域,在整个程序运行期间有效,但如果在局部模块中声明了同名的变量,则在局部模块中,可见的是局部变量,此时,全局变量不可见; 而局部变量的生存期只限于相应的程序模块中,离开相应的程序模块,局部变量x、y就不再存在,此时同名的全局变量重新可见。 程序名:lab5_1.cpp。 ★ 程序的运行结果: 2.(编程)实现客户机(CLIENT)类。 新建一个空的项目lab5_2,添加头文件client.h,在其中声明类CLIENT,注意使用编译预处理命令;再添加源程序文件client.cpp,在其中实现CLIENT类,注意静态成员变量的使用方法;再添加文件lab5_2.cpp,在其中定义main()函数,测试CLIENT类,观察 相应的成员变量取值的变化情况。 提示: 访问一台服务器的客户总数。 静态成员为类的属性,为所有的类的对象共同拥有。 再定义两个静态成员函数,分别显示服务器名和客户总数。 构造函数用于增加一个客户,析构函数用于减少一个客户。 定义一个对象,再定义第二个对象,然后减少一个对象。 参考程序输出结果: 程序及运行结果: (1) 类声明头文件client.h #ifndef CLIENT_H #define CLIENT_H //其中的静态成员为类的属性,为所有的类的对象共同拥有 class client{ public: client(); ~client(); static void ChangeServerName(char ss);//改变服务器名称 static void showServerName(); static void showClientNum(); private: static char ServerName;//保存服务器名,引用性说明 static int ClientNum;//记录已定义的客户(即对象)数量,引用性说明 }; #endif (2) 类实现程序文件client.cpp //client.cpp #include iostream #include client.h using namespace std; client::client(){ ClientNum++; }//增加一个对象(客户) client::~client(){ ClientNum--; }//减少一个对象(客户) void client::ChangeServerName(char sn){ ServerName=sn; }//无static void client::showServerName(){ cout服务器名:ServerNameendl; } void client::showClientNum(){ cout客户总数: ClientNum

文档评论(0)

liangyuehong + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档