- 1、本文档共12页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
面向对象程序设计作业
C++程序设计
第一次作业
问答题
什么是面向对象程序设计?面向对象程序设计的优点是什么?
什么是类?什么是对象?它们之间关系如何?
C++的主要特点有哪些?
什么叫函数重载?什么叫运算符重载?请书写一个函数重载的程序例子,分别计算圆、矩形、三角形的图形面积。
使用内联函数的优点是什么?如何将函数说明为内联函数?
构造函数和析构函数的主要特点各是什么?
什么是this指针?它的主要作用是什么?
什么是拷贝构造函数?在哪三种情形下会触发拷贝构造函数的执行?
什么是友元函数?使用它有什么好处?
什么情况下需要预约存贮空间?试解释下列程序每一语句的含义。
float *p;
p=new float[10];
for( int i=0;i=9;i++,p++)*p=i;
11、如果要释放上一题中指针p所指的空间,应如何操作?
程序设计题
建立一个三角形类tri,有三个私有数据a,b,c,设计一个缺省的3参数构造函数,缺省值分别为3,3,3,再设计一个成员函数showarea,当参数能组成三角形时输出面积值,否则输出-1。
建立一个类book,有二个私有的数据成员qu和price,建立一个有5个元素的数组对象,将qu初始化为1,2,3,4,5,将price初始化为qu的10倍,并设计一个成员函数disp,输出每个对象的qu*pricer的值。
有一个向量类vector,包括一个点的坐标位置x和y,设计二个友元函数,实现两个向量的加法和减法运算。
编写一个程序,设计一个类score,用于统计一个班的学生成绩,其中使用一个静态数据成员sumfs存储总分和一个静态成员函数rsumf()返回该总分。
分析题
请仔细阅读下列程序,回答问题。
1: #include iostream.h
2: class exam{
3: int i;
4: public :
5: exam(int n){i=n;coutconstructing...\n;}
6: ~exam(){coutdestructing...\n;}
7: int get_i(){return i;}
8: };
9: int sqr_it(exam s)
10: {
11: return s.get_i()*s.get_i();
12: }
13: void main()
14: {
15: exam x(11);
16: coutx.get_i()endl;
17: coutsqr_it(x)endl;
18: }
第1行能省略吗?为什么?
(2) 第4行的public :是什么含义?
(3) 第5行、第6行分别定义的是什么函数?它们在什么情况下执行?
(4) 第7行和第9-12行定义的函数中,哪一个是普通的自定义函数?哪一个是类exam的成员函数?
(5) 第15行的含义是什么?
(6) 试写出该程序的运行结果。
(7) 如果将9-12行改为如下内容:
9: int sqr_it(exam *s)
10: {
11: return s-get_i()*s-get_i();
12: }
并将第17行改为
17: coutsqr_it(x)endl;
请写出此时该程序的运行结果。
第二次作业
简答题
什么是类?什么是对象?
什么叫函数重载和运算符重载?使用重载有何优点?
何谓内联函数?采用内联函数有何好处?
构造函数和析构函数的主要作用是什么?
类成员的访问控制属性有哪三种?我们在外部只能访问具备有哪一种属性的对象成员?
在什么情况下应当采用成员初始化列表方式传递数据?
拷贝构造函数的参数与一般的构造函数有何不同?在哪三种情况下拷贝构造函数被执行?
8、什么是this指针?它的主要作用是什么?
判断题
1、定义一个整型指针p,在内存中预约10个连续单元,p指向这10个单元之首,可以使用以下语句操作。(
文档评论(0)