- 1、本文档共31页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
作业及其答案汇总作业及其答案汇总
一、类和对象基本概念
1) 写出下面程序的运行结果:
#include iostream.h
class Apple {
private :
static int nTotalNumber;
public:
Apple()
{ nTotalNumber ++; }
~Apple( ) { nTotalNumber --; }
static void PrintTotal()
{ cout nTotalNumber endl; }
};
int Apple::nTotalNumber = 0;
Apple Fun( const Apple a )
{ a.PrintTotal(); return a ; }
int main () {
Apple * p = new Apple[4];
Fun( p[2]);
Apple p1, p2;
delete [] p;
p1.PrintTotal();
}
/*
4
1
*/
2) 写出下面程序的运行结果:
#include iostream.h
class Sample{
public:
int v;
Sample() { };
Sample(int n):v(n) { };
Sample( Sample x) { v = 2 + x.v ; }
};
Sample PrintAndDouble( Sample o)
{
cout o.v;
o.v = 2 * o.v;
return o;
}
int main()
{
Sample a(5);
Sample b = a;
Sample c = PrintAndDouble( b );
cout endl;
cout c.v endl;
Sample d;
d = a;
cout d.v ;
}
/*
9
22
5
*/
3) 下面的程序输出结果是:
0
5
请填空补足程序。所填内容不允许包含分号。
class A {
public:
int val;
A(____________ ){ val = n; };
___A ________ GetObj() {
return _* this_______;
}
};
main() {
A a;
cout a.val endl;
a.GetObj() = 5;
cout a.val endl;
}
/*
int n =0
A
* this
*/
4) 下面程序的输出是:
3+4i
5+6i
请补足Complex类的成员函数。不能增加成员变量。
#include iostream
#include string.h
using namespace std;
class Complex {
private:
double r,i;
public:
void Print() {
cout r + i i endl;
}
};
int main()
{
Complex a;
a = 3+4i;
a.Print();
a = 5+6i;
a.Print();
}
/*
Complex() { };
Complex( char * s) {
r = s[0] - 0;
i = s[2] - 0;
}
*/
5) 下面程序的输出是:
10
请补足Sample类的成员函数。不能增加成员变量。
#include iostream.h
class Sample{
public:
int v;
Sample(int n):v(n) { };
};
int main()
{
Sample a(5);
Sample b = a;
cout b.v ;
}
/*
Sample( Sample x) { v = 2 * x.v ; }
*/
6)下面程序的输出是:
This
Hello
请补足MyString类的成员函数。不能增加成员变量。
#include iostream.h
#include string.h
class MyString{
char * p;
public:
MyString( char * s ) {
p = new char[strlen(s)+1];
strcpy(p,s);
}
~MyString() { delete [] p;}
const char * c_str() { return p;}
};
int main()
{
MyString s1(This), s2 =s1;
s2.
文档评论(0)