浙江大学远程教育2015面向对象程序设计离线作业(8)

2019-09-01 13:53

{ Student p1,p2,p3; p1.age=30; . . . return 0; }

答:语句“pl.age=30;”编译出现错误,因为age是私有数据成员(private),不能被直接访问。

【3.28】 指出下列程序中的错误,并说明为什么。

#include using namespace std; class Student{ int sno; int age;

void printStu(); void setSno(int d); };

void printStu();

{ cout<<\ cout<<\}

void setSno(int s) { sno=s; }

void setAge(int a) { age=a; } int main() { Student lin;

lin.setSno(20021); lin.setAge(20); lin.printStu(); }

答:有三个错误:

第一,printStu()和setSno(int d)两个成员函数没有用public定义,在默认情况下属于私有函数,不允许外部函数对对象进行操作;

第二,成员函数printStu()和setSno(int d)在类外定义,应加上类名“Student::”

第三,void setAge(int a)应在类中说明,并在类外定义,应加上类名“Student::”

【3.29】 指出下列程序中的错误,并说明为什么。

#include using namespace std; class Point{ public: int x,y; private: Piont() {x=1;y=2; } }; int main() {Point cpoint; cpoint.x=2; return 0; }

答:有两个错误:

第一:构造函数名应与类名相同,“Piont()”应改为“Point()” ; 第二,构造函数Point()是私有的,所以语句“Point cpoint;”执行时出现错误,原因是类Point构造函数私有,创建对象cpoint就不能调用它。 【3.30】 下面是一个计算器类的定义,请完成该类成员函数的实现。

class counter{ public:

counter(int number);

void increment(); void decrement(); int getvalue(); int print(); private: int value; };

答:完整程序如下 class counter{ public:

counter(int number); void increment(); void decrement(); int getvalue(); int print(); private: int value; };

//成员函数的实现

counter::counter(int number) { value=number;}

void counter::increment()

//给原值加1 //给原值减1 //取得计数器值 //显示计数 { value++;}

void counter::decrement() { value--;}

int counter::getvalue() { return value;} int counter::print()

{ cout<<”value is “<

【3.31】 根据注释语句的提示,实现类Date的成员函数。

#include using namespace std; class Date{ public:

void printDate(); //显示日期 void setDay(int d); //设置日的值 void setMonth(int m); //设置月的值 void setYear(int y); //设置年的值 private:

int day,month,year; }; int main() { Date testDay; testDay.setDay(5); testDay.setMonth(10); testDay.setYear(2003); testDay.printDate(); return 0; }

答:类Date的成员函数如下 void Date::printDate() {

cout<<\ cout<

void Date::setDay(int d) {day=d;}

void Date::setMonth(int m) {month=m;}

void Date::setYear(int y) {year=y;}

【3.32】 建立类cylinder,cylinder的构造函数被传递了两个double值,分别


浙江大学远程教育2015面向对象程序设计离线作业(8).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:九年级第二学期第一次月考物理试题(北师大版)

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: