云题海 - 专业文章范例文档资料分享平台

当前位置:首页 > 面向对象程序设计实验报告

面向对象程序设计实验报告

  • 62 次阅读
  • 3 次下载
  • 2025/5/4 2:51:30

答:调用的函数是void swap(int*a,int*b)。

实验二 类和对象——类的构建

2.1 实验目的 1.类的定义; 2.类对象的使用;

3.类成员变量的定义和使用; 4.类成员函数的定义和使用; 5.理解类的作用域; 6.理解类的声明;

7.理解类中成员的访问属性; 2.2 实验内容 2.2.1程序阅读

1. 理解下面的程序并运行,然后回答后面的问题。 #include class CDate {

public: void Set(int m,int d,int y) { month=m; day=d; year=y; } int IsLeapYear() { return (year%4==0 && year0!=0)||(year@0==0); } void Print() { cout<

};

void main() { CDate a; a.Set(10,15,2007); a.Print(); }

问题一:以上程序为什么不能通过编译?如何改正?

答:因为Set函数被设为私有main函数中无法调用,应在set函数前加public。 问题二:类中的成员函数和成员变量分别属于哪种访问权限?

答:数据成员为私有,Print为公有;set原为私有,改正后为公有。 问题三:①处语句的意思是什么? 答:将类定义一个对象a。

2.理解下面的程序并运行,然后回答问题。 . #include int month;//全局变量 int day; int year;

void Set(int m,int d,int y) { ::month=m; ::day=d; ::year=y; }

class CDate {

public: void Set(int m,int d,int y) { ::Set(m,d,y); } void Print() { cout<

int day; int year; };

void main() { CDate a; a.Set(10,15,2007); a.Print(); }

问题一:①处是在给成员变量赋值还是全局变量赋值,如果去掉域作用符::,程序是否还能正确运行? 答:全局变量,不能。

问题二:②处调用的哪个函数,如果去掉域作用符::,程序是否还能正确运行? 答:调用全局set函数;不能。 问题三:程序的输出结果是? 答:

实验三 类和对象——构造函数与析构函数

3.1实验目的

1.理解this指针的作用和用法; 2.掌握构造函数的定义和作用; 3.掌握构造函数的使用;

4.掌握拷贝构造函数的定义和使用; 5.掌握构造函数的重载;

6.掌握析构函数的定义和使用。 3.2实验内容 3.2.1程序阅读

1.理解下面的程序并运行,然后回答问题。

#include class CPoint {

public: void Set(int x,int y); void Print(); private: int x; int y; };

void CPoint::Set(int x,int y) { x=x; y=y; }

void CPoint::Print() { cout<<\}

void main() { CPoint pt; pt.Set(10,20); pt.Print(); }

问题一:以上程序编译能通过吗?如果不能,原因是什么? 答:能通过编译。

问题二:以上程序的运行结构是否正确,如果不正确,分析为什么,如何改正? 答:运行结构不正确,因为Set函数中,x=x,参数x覆盖数据成员,使得数据成员并没有被赋值。

2.理解下面的程序并运行,然后回答后面的问题。 include class CPerson {

public: void Print(); private:

搜索更多关于: 面向对象程序设计实验报告 的文档
  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

答:调用的函数是void swap(int*a,int*b)。 实验二 类和对象——类的构建 2.1 实验目的 1.类的定义; 2.类对象的使用; 3.类成员变量的定义和使用; 4.类成员函数的定义和使用; 5.理解类的作用域; 6.理解类的声明; 7.理解类中成员的访问属性; 2.2 实验内容 2.2.1程序阅读 1. 理解下面的程序并运行,然后回答后面的问题。 #include class CDate { public: void Set(int m,int d,int y) { month=m; day=d; year=y; } int IsLeapYear() { return (year%4==0 && year0!=0)||(year@

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:10 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219
Copyright © 云题海 All Rights Reserved. 苏ICP备16052595号-3 网站地图 客服QQ:370150219 邮箱:370150219@qq.com