2023年面向对象程序设计含答案.docx
《2023年面向对象程序设计含答案.docx》由会员分享,可在线阅读,更多相关《2023年面向对象程序设计含答案.docx(13页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、填空题(2 0分)1、构造函数是特殊的成员函数,在创建和初始化对象时调用。2、一静态成员是局部于类的成员,它提供一种同类对象的一共享 机制。3、运算符重我的作用是使运算符可以操作自定义的一类对象但重载后运算符 原有的一基本语义不变。4、派生类不能访问基类的私有成员,但可以访问基类的公有成员和保护 成员。5、具有纯虚函数的类称为抽象类。6、Window s应用程序是靠消息一来驱动的,其主函数的重要任务是对窗口进行 初始化工作和一消息循环7、MFC是用消息映射表来实现消息与消息响应函数之间的映射的,MFC通 过_4 个宏来声明和实现消息映射表。8、在文档/视图结构的框架中,视图类_CView 类的
2、对象用来显示数据并接受用 户操作。文档类_C Documen t_对象的作用是存储和管理数据。9、CPaintDC是_CDC_类中最常用的派生类,它只能使用在CV i ew类的 _0nDraw_函数中。10、消息WM_MOUSEMOVE的消息响应函数的函数名为_0nMouseMo v e。11、资源是供Windows应用程序使用的特殊数据,它们驻留在硬盘上的可执行 文献中。常用的资源有菜单、快捷键、图标、位图等。12、内存中的对象可以以文献的形式存储在永久性存储介质中,而当应用程序再把 它从永久性存储介质读入后,该对象能恢复为本来的状态,则该对象称之为 永(持)久性对象 o b ase obj
3、 1 , * p ; der i vedl o bj2; de r ived2 obj3;P=&o b jl; p-w h o ();P=& o bj2; p-w h o();P =&obj3; p wh o ();O b jl.wh o (); O b j2. w h o(); 0 bj3.who();)结果:b a se c lassB a se c lassBase c 1 assBas e c 1 a ssDeri v edl classDer i ved2 class7、#inclu d ec 1 as s e xamp 1 e privat e :in t date; s t a
4、tic i nt count;public:e x ample (int y=10):date(y) c out da t e= d a t eendl;Cou n t+ ;st a tic int dis play ()st a tic int dis play () r etu r n c o unt; ;int e x am p 1 e : :coun t =0;void ma i n()ex a nip 1 e el; e x ample e 2 (20);cout e 1. Display()end 1 ;c oute2. Display () e nd 1 ;coutexampl
5、e :: D i s p la y ()en d 1;)运营结果:Date=10 Da t e=2 02228、指出下列程序中的错误,并说明理由# includ e class St u d e nt p u b 1 ic:void Student () “/构造函数有返回类型错,函数后面多分号voi d Di s p 1 ay() ci n n a u m b er ;cout(姓名 Vname V 学号numb e r e ndl; /字 符串缺少双引号p r i va t e: c h ar * name = non a m e ; /数据成员不能赋值int numb e r=0;/数据
6、成员不能赋值);四、编程题:(20分,每题10分)1、编写一个程序,实现小型公司的工资管理。该公司重要有4类人员:经理、兼职技 术人员、销售员和销售经理。规定存储这些人员的编号、姓名和月工资,计算月工资并显示所有信息。月工资计算办法是:经理拿固定月薪8 ()()0元,兼职技术人员按每小时100元领取月薪,销售员按当月销售额的4%提成,销售经理既拿固定月工资又拿销售提成,固定月工资为5 ()0 0元,销售提成为所管部门当月销售总额的0.5%。规定补充未完毕的代码,使其成为一个完整的程序。#inc 1 u d e class Employ e e(p ubli c :e mployee() cou
7、t n oname; sa 1 a r y= 0;v oid Pay() void Display()P r ot e ct e d : Int n o ; char n a me L 1 0 ; float saiar y ; ;Cla s s t e ch n i c ian: p ubl i c Emp 1 oyee派生技术人员 pub lic:Tec h nic i an() ho u rly r ate= 100.0;void P a y() co u tname“本月工作时数: cinworkhou r s ;salary=h o url y rat e * wor k ho u
8、rs;void D i splay()cout”兼职技术人员” VvnameVv”(编号为”noV V)“本月工 资:sala r y e ndl;)private:补充下面内容f loat h o urlyrate i nt wor k hours; ;Cl a s s Salema n : p u b 1 i c Employe e/派生销售员类 publi c : Salesm an () c o mmra t e= 0 . 0 4f; 销售提成比例void P a y() cou tn a mes a le s ; salary =sale s * commrate;) v o id
9、Displa y()cout, 销售员,nam e vv”(编号为“ V V no,), 本月工资:号s alary endl; Pro t e ct e d:Fl o at commrate; sal e s; ;Cl a ss Mana ger: vi r tu a 1 p ub 1 ic Emplo y ee p ub 1 ic: Ma n ager() monthl y pay=80 0 0;)补充函数体内容Vo i d Pay() s ala r y=mon t h 1 y p a y; / /补充函数体内容void Dis p la y ()coutv“经理na m eM(编号为M
10、n o ”厂本月工 资:salaryend 1 ;P r o t ected: float m o n t hlypay;Clas s SalesM a nag e r : pu b 1 i c M a nag e r, pu b li c S a lesman / /补 充此处类的内容 pu b 1 i c:S a lesManage r () monthly p ay=5() 0 0 ; C o mmra t e =0. 0 05 f; v oi d Pay ( ) cou t namesales; sal a r y=monthly p ay+sa 1 es*c o mmra t e;v
11、oid Display ()co ut ”销售经理” vv n ame” (编号为 n o V)”本月工资:“s a 1 ary CWinA p p类的派生类 CMyP r j App CDo c umen t 类的派生类 CMyPrjDoc 和 CMyPr jVi e w。其中,C M y P r jDoc类对象用来存储和管理应用程序中的数据;CM a i n Fr a me对象与CMy P门V i ev 对象构成了应用程序的界面,CM a i nFram e对象只是CMyPrjVi e w对象的容器,ifij C.My PrjView类的对象是用来显示文档与接受用户事件的;CMyPr j
12、App类的对象是应用程 序的全局对象;它是应用程序中对象的容器;负责创建应用程序界面和消息循环。(2)为什么拆分窗口的显示更新必须要同步?文档类的成员函数Updat e Al 1 V i ews的作用是什么?答:由于应用程序的所有拆分窗口显示的应当是同一个文档,所以当文档发生变化 时,该文档所相应的窗口当然要同时更新显示以对的地反映文档的内容。文档类的成员函数Updat e A 1 1 Vi e ws的作用是告知文档所相应的所有窗口同时 进行重绘。(3)如何才干使控件成为窗口的子窗口并且在窗口中可见?按钮控件能发明哪三种不同的形式?答:为了使控件成为窗口的子窗口并且在窗口中可见,两个控制样式的
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2023 面向 对象 程序设计 答案
限制150内