C++典型概念与习题new.docx
- 文档编号:2920493
- 上传时间:2022-11-16
- 格式:DOCX
- 页数:22
- 大小:22.78KB
C++典型概念与习题new.docx
《C++典型概念与习题new.docx》由会员分享,可在线阅读,更多相关《C++典型概念与习题new.docx(22页珍藏版)》请在冰豆网上搜索。
C++典型概念与习题new
C++典型概念与习题
一、基本概念
1.在类体内定义的成员函数默认为内联函数,在类体外定义的成员函数只有用inline修饰的才可能成为内联函数。
类体外定义类的成员函数的形式。
2.当同名的全局变量和局部变量相冲突时,可以用作用域运算符来访问全局变量
3.类的静态成员是该类的所有对象所共享的成员,类可以没有静态成员。
4.如果没有显式定义构造函数,系统将隐式定义缺省的构造函数及拷贝构造函数;
5.如果只显式定义了拷贝构造函数,系统仍然不隐式定义缺省的构造函数;
6.如果显式定义了构造函数但没有显式定义拷贝构造函数,系统将隐式定义拷贝构造函数。
7.通过指针访问对象成员的形式
8.逗号运算符的使用(优先级)
9.正确理解while、do…while循环
10.正确理解break,continue语句的功能
11.正确理解类成员的访问特性
12.理解运算符重载的概念及特点(哪些特性能改变与不能改变)
13.复杂逻辑表达式的取值(结果是什么?
与关系运算、赋值运算一起的混合运算、逻辑表达式优化)
14.正确理解数组名作为函数的参数的意义与形式
15.正确理解友元函数与类的成员函数的区别
16.类和对象的概念与关系
17.理解类的构造函数和析构函数是否能重载
二、阅读理解(分析程序输出)
1.[程序]
#include
usingnamespacestd;
inta[4]={49,-7,73,9};
voidfun(inta[][4],intn){
for(inti=0;i for(intj=0;j<4;j++) if(a[i][j]<0)a[i][j]=-1; elseif(a[i][j]<5)a[i][j]*=2; elseif(a[i][j]<10)a[i][j]-=5; elsea[i][j]=10; } intmain(){ intd[3][4]={-5,-4,-3,-2,-1,0,1,2,3,4,5,6},s1=0,s2=0; fun(d,3); for(inti=0;i<3;i++) for(intj=0;j<4;j++){ s1+=d[i][j]; s2*=d[i][j]; } cout<<"s1="< cout<<"s2="< return0; } 2.[程序] #include usingnamespacestd; classA{ inta,b; public: A(){a=0;b=0;} voidset(intt){a=t;b=2*t;} friendvoidshow(A*); }; voidshow(A*t){cout<<(t->a+t->b)< intmain(){ intt=1; Aa1[5],*pa=a1; for(inti=1;i<4;i++) (pa+i)->set(t+=1); pa=a1; while(pa<=&a1[4]){ show(pa); pa++; } return0; } 3.[程序] #include usingnamespacestd; voidfun(int*p,intn){ if(n==0)*p=0; elseif(n==1)*p=1; else*p=*(p-1)+*(p-2); } intmain(){ inti=0,a[10]; while(i<10){ fun(a+i,i); i++; } i=0; while(i<10) cout< return0; } 4.[程序] #include usingnamespacestd; classA{ protected: inta; public: A(intt=5){ a=t; cout<<"a="< } intgeta(){returna;} }; classB: publicA{ At; intb; public: B(intm): t(m){ b=2*m; cout<<"B()"< } voidprint() {cout<<(a+b+t.geta())< }; intmain(){ Bb1 (2); b1.print(); return0; } 5.[程序] #include #include usingnamespacestd; voidstr(char*st1,char*st2,intn=-1){ char*p1=st1,*p2=st2; while(*p1++); p1-=2; if(n<0)p2+=strlen(st2)-1; elsep2+=n; while(p2>=st2) *p1++=*p2--; *p2='\0'; } intmain(){ chars1[40]="abcde",s2[]="12345",s3[]="ABCDE"; str(s1,s2); cout< str(s1,s3,3); cout< return0; } 6.[程序] #include usingnamespacestd; classA{ public: inta; A(intt=5){a=t;}
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C+ 典型 概念 习题 new