1、
部分习题解答
第2章习题
2. 读程序,写出程序的执行结果
(1)若输入数据“12 345 634 3214”并按Enter键后,写出程序的输出结果。
(2)
第三章习题
9. 指出下面程序的错误。
int &f1(int x=0,int y){ //y应该有缺省值
return x*y; //只能返回整型变量名,因函数返回的是引用
}
int *f2(int a;int b=1){ //应以逗号为参数间隔符
int t=a*b;
return &t; //t的生命期短于f2函数名,程
2、序会因此出现不定的函数值
}
void main(){
const r; //r是常量,当在定义是初始化
int &a,*p; //引用a当在定义时初始化
r=10;
a=r;
const char *pc1="dukang";
char *const pc2="dukang";
char const *pc3="dukang";
const char const*pc4="dukang";
pc1[2]='t'; //pc1所指内容为常量,不能修改
pc2[2]='t';
pc3[
3、2]='t'; // pc3所指内容为常量,不能修改
pc4[2]='t'; //pc4所指内容为常量,不能修改
cout<4、 //构造函数必须在列表中提供b,c的初如化
public:
int X(){a=b=c=0;} //与类同名的函数只能是构造和析构函数,不能有返回类型
//b,c只能在构造函数初始化列表中初始化
X(int i,int j,int k){ a=i;b=j;c=k; }//b,c只能在构造函数初始列表中初始化
static void setB(int k){ b=k; } //静态成员函数不能访问非静态成员b
setC(int k)const{ c=c+k; } //const成员函
5、数不能修改数据成员c
};
void main(){
X x1; //默认构函数为private,不能定义对象
X x2(3);
X x3(1,2,3); //应用X类的私有构造函数定义对象,不允许
x1.setA(3); //访问调用私有成员,不允许
}
7. 读程序,写出程序运行结果。
(1)
}
(2)
(3)
第5章 习题
6. 指出下面程序中的错误。
#include
//应增加using namespace std;
6、
class A{
int x;
A(int a){ x=a; }
public:
setA(int y){ x=y; }
};
class B:private A{
public:
B(){ cout<<"B"<