- 1、本文档共11页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
实验5静态成员友元对象成员.doc
实验五静态成员、友元、对象成员
1、 实验目的:
掌握静态数据成员的定义及使用;
掌握静态成员函数的定义及使用。
掌握友员函数的定义和使用。
理解对象成员的概念
掌握对彖成员的初始化方法
2、 实验内容:
2.1分析下面的程序,指岀程序运行的结果。
1)P132 习题 3.14, 3.15, 3.20, 3.23, 3.24, 3.25, 3.26 代码:
3.14
# includeiostream.h
class B{
public:
B(){
}
B(int i,int j)
{x=i;
y=j;
}
void printb()
{cout?x?M/,?y?endl;
}
private:
int x,y;
};
class A{
public:
A()
{
}
A(int I ,int j);
void printa();
private:
B c;
};
A::A(int i,int j):c(i,j)
void A::printa()
(c.printb();
}
int main()
(Aa(7,8);
a.printa();
return;
}
程序运行结果:
7,8
3.15
程序代码:
# includeiostream.h
class A{
public:
void set(int i.int j)
{x=i;
y=j;
}
int get_y()
{return y;
}
private:
int x,y;
};
class box{
public:
void set(int l,int w.int s.int p) {lcngth=l;
width=w;
label.set(s,p);
}
int ger_area()
{return length*width;
)
private:
int length,width;
A label;
};
int main()
{box b;
bset(4,6 丄 20);
cout?b.gcr_arca()?cndl; return 0;
}
程序运行结果:
24
3.20
程序代码:
# includeiostream.h
class aclass{
public:
aclass()
{total++;
)
?aclass()
{total-;
}
int gcttotal()
{return total;
}
private:
static int total;
};
int aclass::total=0;
int main()
{aclass ol,o2,o3;
cout?ol .gettotal()?,robjects in existence\nn; aclass *p;
p=new aclass;
if(!p)
{cout?MAllocation error\nn;
return 1;
}
cout?oLgettotal();
cout?nobjects in existence after allocation\nH; delete p;
cout?ol.gettotal();
cout?nobjccts in existence after allocationn”; return 0;
程序运行结果:
objects in existence
objects in existence after allocation
3 objects in existence after allocation
3.24
程序代码:
# includeiostream.h
class N{
private:
int A;
static int B;
public:
N(int a)
{
A=a;
B+=a;
}
static void fl(N m);
};
void N::fl(N m)
{cout?MA=n?m.A?endl; cout?HB=n?B?endl;
}
intN::B=0;
int main()
{N P(5),Q(9);
N::fl(P);
N::fl(Q);
return 0;
}
程序运行结果:
A=5
B=14
A=9
B=14
3.26
程序代码:
# includeiostream.h
class M{
int A; static int B;
public:
M(int a)
{
A=a;
B+=a; cout?nConstructingH?endl;
}
static void fl(M m);
?M()
{cout?,,Destructing\n,;
}
};
voidM::fl(M m)
{cout? A=?m. A?endl;
cout?B=M?B?endl;
}
int M::B=0;
int main()
{MP(
您可能关注的文档
最近下载
- 2024北京大兴区人力资源和社会保障局招聘临时辅助用工9人笔试备考题库及答案解析.docx VIP
- 智慧医院组织架构与管理体系案例分析.pptx VIP
- 水稻种植培训课件.ppt
- 某县城市生活垃圾填埋工程水土保持方案初步设计详细报告书.doc VIP
- 医院内部控制手册全册.docx VIP
- 全国中医临床优秀人才考试试题.pdf
- 青岛市转业军官安置考试真题及答案2024.docx VIP
- 2.7_自然人分布式光伏发电项目购售电合同(2022版).docx VIP
- 2025年icu护士护理工作计划(推荐6篇) .pdf VIP
- 第8讲《人无精神则不立国无精神则不强》(课件)《学生读本(小学高年级)》.ppt
文档评论(0)