新建
上传
首页
助手
最?/div>
资料?/div>
工具

实验?/p>

 

 

 

多态?/p>

 

1.

 

实验目的

 

1.

掌握运算符重载的方法

 

2.

学习使用虚函数实现动态多态?/p>

 

 

2.

 

实验要求

 

1.

定义

Point

类,有坐?/p>

_x

?/p>

_y

两个成员变量;对

Point

类重?/p>

?/p>

++

?

自增

)

?/p>

?/p>

――?

自减

)

?/p>

算符,实现对坐标值的改变?/p>

 

2.

定义一个车

(vehiele)

基类,有

Run

?/p>

Stop

等成员函数,由此派生出自行车

(bicycle)

类、汽?/p>

(motorcar)

类,

?/p>

bicycle

?/p>

motorcar

派生出摩托车

(motorcycle)

类,

它们都有

Run

?/p>

Stop

等成

员函数。观察虚函数的作用?/p>

 

3. (

选做

)

对实?/p>

4

中的

People

类重载“==”运算符和?/p>

=

”运算符?/p>

“==”运算符判断?/p>

?/p>

people

类对象的

id

属性是否相等;

?/p>

=

”运算符实现

People

类对象的赋值操作?/p>

 

 

3.

 

实验内容及实验步?/p>

 

1.

编写程序定义

Point

类,在类中定义整型的私有成员变量

_x_y

,定义成员函?/p>

Point& 

operator++()

?/p>

Point operator++(int)

;以实现?/p>

Point

类重载?/p>

++?

自增

)

运算符,定义成员?/p>

?/p>

Point

?/p>

 

operator

--

()

?/p>

Point operator

--

(int)

;以实现?/p>

Point

类重载“--?/p>

(

自减

)

?/p>

算符,实现对坐标值的改变。程序名?/p>

1ab8_1

?/p>

cpp

?/p>

 

2.

编写程序定义一个车

(vehicle)

基类,有

Run

?/p>

Stop

等成员函数,由此派生出自行车

(bicycle)

类、汽?/p>

(motorcar)

类,?/p>

bicycle

?/p>

motorcar

派生出摩托车

(motorcycle)

类,它们都有

Run

?/p>

Stop

等成员函数。在

main()

函数中定?/p>

vehicle

?/p>

bicycle

?/p>

motorcar

?/p>

motorcycle

的对象,?/p>

用其

Run()

?/p>

Stop()

函数,观察其执行情况。再分别?/p>

vehicle

类型的指针来调用这几个对?/p>

的成员函数,

看看能否成功?/p>

?/p>

Run

?/p>

Stop

定义为虚函数?/p>

再试试看?/p>

程序名:

lab8_2

?/p>

cpp

?/p>

 

 

4.

 

思考题

 

1.

 

如何将一个运算符重载为类的成员函数?

 

函数类型

 

operator 

运算符(形参表)

 

{

 

 

 

 

 

 

函数体;

 

}

 

2.

 

如何将一个运算符重载为类的友元函数?

 

friend 

函数类型

 

operator 

运算符(形参表)

 

{

 

 

 

 

 

 

函数体;

 

}

 

3.

如何实现运行时刻的多态?

 

在基类的成员函数前加?/p>

virtual

,就可以在它的派生类中声明相同名字和类型的成员函数,

在运行过程中,系统会自动判断并调用相应类中的成员函数,从而在调用过程中实现多态?/p>

 

 

5.

 

源程?/p>

 

1.

 

lab8_1.cpp

 

#include<iostream>

 

Ͼλ
新建
上传
首页
助手
最?/div>
资料?/div>
工具

实验?/p>

 

 

 

多态?/p>

 

1.

 

实验目的

 

1.

掌握运算符重载的方法

 

2.

学习使用虚函数实现动态多态?/p>

 

 

2.

 

实验要求

 

1.

定义

Point

类,有坐?/p>

_x

?/p>

_y

两个成员变量;对

Point

类重?/p>

?/p>

++

?

自增

)

?/p>

?/p>

――?

自减

)

?/p>

算符,实现对坐标值的改变?/p>

 

2.

定义一个车

(vehiele)

基类,有

Run

?/p>

Stop

等成员函数,由此派生出自行车

(bicycle)

类、汽?/p>

(motorcar)

类,

?/p>

bicycle

?/p>

motorcar

派生出摩托车

(motorcycle)

类,

它们都有

Run

?/p>

Stop

等成

员函数。观察虚函数的作用?/p>

 

3. (

选做

)

对实?/p>

4

中的

People

类重载“==”运算符和?/p>

=

”运算符?/p>

“==”运算符判断?/p>

?/p>

people

类对象的

id

属性是否相等;

?/p>

=

”运算符实现

People

类对象的赋值操作?/p>

 

 

3.

 

实验内容及实验步?/p>

 

1.

编写程序定义

Point

类,在类中定义整型的私有成员变量

_x_y

,定义成员函?/p>

Point& 

operator++()

?/p>

Point operator++(int)

;以实现?/p>

Point

类重载?/p>

++?

自增

)

运算符,定义成员?/p>

?/p>

Point

?/p>

 

operator

--

()

?/p>

Point operator

--

(int)

;以实现?/p>

Point

类重载“--?/p>

(

自减

)

?/p>

算符,实现对坐标值的改变。程序名?/p>

1ab8_1

?/p>

cpp

?/p>

 

2.

编写程序定义一个车

(vehicle)

基类,有

Run

?/p>

Stop

等成员函数,由此派生出自行车

(bicycle)

类、汽?/p>

(motorcar)

类,?/p>

bicycle

?/p>

motorcar

派生出摩托车

(motorcycle)

类,它们都有

Run

?/p>

Stop

等成员函数。在

main()

函数中定?/p>

vehicle

?/p>

bicycle

?/p>

motorcar

?/p>

motorcycle

的对象,?/p>

用其

Run()

?/p>

Stop()

函数,观察其执行情况。再分别?/p>

vehicle

类型的指针来调用这几个对?/p>

的成员函数,

看看能否成功?/p>

?/p>

Run

?/p>

Stop

定义为虚函数?/p>

再试试看?/p>

程序名:

lab8_2

?/p>

cpp

?/p>

 

 

4.

 

思考题

 

1.

 

如何将一个运算符重载为类的成员函数?

 

函数类型

 

operator 

运算符(形参表)

 

{

 

 

 

 

 

 

函数体;

 

}

 

2.

 

如何将一个运算符重载为类的友元函数?

 

friend 

函数类型

 

operator 

运算符(形参表)

 

{

 

 

 

 

 

 

函数体;

 

}

 

3.

如何实现运行时刻的多态?

 

在基类的成员函数前加?/p>

virtual

,就可以在它的派生类中声明相同名字和类型的成员函数,

在运行过程中,系统会自动判断并调用相应类中的成员函数,从而在调用过程中实现多态?/p>

 

 

5.

 

源程?/p>

 

1.

 

lab8_1.cpp

 

#include<iostream>

 

">
新建
上传
首页
助手
最?/div>
资料?/div>
工具

实验?/p>

 

 

 

多态?/p>

 

1.

 

实验目的

 

1.

掌握运算符重载的方法

 

2.

学习使用虚函数实现动态多态?/p>

 

 

2.

 

实验要求

 

1.

定义

Point

类,有坐?/p>

_x

?/p>

_y

两个成员变量;对

Point

类重?/p>

?/p>

++

?

自增

)

?/p>

?/p>

――?

自减

)

?/p>

算符,实现对坐标值的改变?/p>

 

2.

定义一个车

(vehiele)

基类,有

Run

?/p>

Stop

等成员函数,由此派生出自行车

(bicycle)

类、汽?/p>

(motorcar)

类,

?/p>

bicycle

?/p>

motorcar

派生出摩托车

(motorcycle)

类,

它们都有

Run

?/p>

Stop

等成

员函数。观察虚函数的作用?/p>

 

3. (

选做

)

对实?/p>

4

中的

People

类重载“==”运算符和?/p>

=

”运算符?/p>

“==”运算符判断?/p>

?/p>

people

类对象的

id

属性是否相等;

?/p>

=

”运算符实现

People

类对象的赋值操作?/p>

 

 

3.

 

实验内容及实验步?/p>

 

1.

编写程序定义

Point

类,在类中定义整型的私有成员变量

_x_y

,定义成员函?/p>

Point& 

operator++()

?/p>

Point operator++(int)

;以实现?/p>

Point

类重载?/p>

++?

自增

)

运算符,定义成员?/p>

?/p>

Point

?/p>

 

operator

--

()

?/p>

Point operator

--

(int)

;以实现?/p>

Point

类重载“--?/p>

(

自减

)

?/p>

算符,实现对坐标值的改变。程序名?/p>

1ab8_1

?/p>

cpp

?/p>

 

2.

编写程序定义一个车

(vehicle)

基类,有

Run

?/p>

Stop

等成员函数,由此派生出自行车

(bicycle)

类、汽?/p>

(motorcar)

类,?/p>

bicycle

?/p>

motorcar

派生出摩托车

(motorcycle)

类,它们都有

Run

?/p>

Stop

等成员函数。在

main()

函数中定?/p>

vehicle

?/p>

bicycle

?/p>

motorcar

?/p>

motorcycle

的对象,?/p>

用其

Run()

?/p>

Stop()

函数,观察其执行情况。再分别?/p>

vehicle

类型的指针来调用这几个对?/p>

的成员函数,

看看能否成功?/p>

?/p>

Run

?/p>

Stop

定义为虚函数?/p>

再试试看?/p>

程序名:

lab8_2

?/p>

cpp

?/p>

 

 

4.

 

思考题

 

1.

 

如何将一个运算符重载为类的成员函数?

 

函数类型

 

operator 

运算符(形参表)

 

{

 

 

 

 

 

 

函数体;

 

}

 

2.

 

如何将一个运算符重载为类的友元函数?

 

friend 

函数类型

 

operator 

运算符(形参表)

 

{

 

 

 

 

 

 

函数体;

 

}

 

3.

如何实现运行时刻的多态?

 

在基类的成员函数前加?/p>

virtual

,就可以在它的派生类中声明相同名字和类型的成员函数,

在运行过程中,系统会自动判断并调用相应类中的成员函数,从而在调用过程中实现多态?/p>

 

 

5.

 

源程?/p>

 

1.

 

lab8_1.cpp

 

#include<iostream>

 

Ͼλ">
Ͼλ
Ŀ

C++上机实验报告 实验?- 百度文库
新建
上传
首页
助手
最?/div>
资料?/div>
工具

实验?/p>

 

 

 

多态?/p>

 

1.

 

实验目的

 

1.

掌握运算符重载的方法

 

2.

学习使用虚函数实现动态多态?/p>

 

 

2.

 

实验要求

 

1.

定义

Point

类,有坐?/p>

_x

?/p>

_y

两个成员变量;对

Point

类重?/p>

?/p>

++

?

自增

)

?/p>

?/p>

――?

自减

)

?/p>

算符,实现对坐标值的改变?/p>

 

2.

定义一个车

(vehiele)

基类,有

Run

?/p>

Stop

等成员函数,由此派生出自行车

(bicycle)

类、汽?/p>

(motorcar)

类,

?/p>

bicycle

?/p>

motorcar

派生出摩托车

(motorcycle)

类,

它们都有

Run

?/p>

Stop

等成

员函数。观察虚函数的作用?/p>

 

3. (

选做

)

对实?/p>

4

中的

People

类重载“==”运算符和?/p>

=

”运算符?/p>

“==”运算符判断?/p>

?/p>

people

类对象的

id

属性是否相等;

?/p>

=

”运算符实现

People

类对象的赋值操作?/p>

 

 

3.

 

实验内容及实验步?/p>

 

1.

编写程序定义

Point

类,在类中定义整型的私有成员变量

_x_y

,定义成员函?/p>

Point& 

operator++()

?/p>

Point operator++(int)

;以实现?/p>

Point

类重载?/p>

++?

自增

)

运算符,定义成员?/p>

?/p>

Point

?/p>

 

operator

--

()

?/p>

Point operator

--

(int)

;以实现?/p>

Point

类重载“--?/p>

(

自减

)

?/p>

算符,实现对坐标值的改变。程序名?/p>

1ab8_1

?/p>

cpp

?/p>

 

2.

编写程序定义一个车

(vehicle)

基类,有

Run

?/p>

Stop

等成员函数,由此派生出自行车

(bicycle)

类、汽?/p>

(motorcar)

类,?/p>

bicycle

?/p>

motorcar

派生出摩托车

(motorcycle)

类,它们都有

Run

?/p>

Stop

等成员函数。在

main()

函数中定?/p>

vehicle

?/p>

bicycle

?/p>

motorcar

?/p>

motorcycle

的对象,?/p>

用其

Run()

?/p>

Stop()

函数,观察其执行情况。再分别?/p>

vehicle

类型的指针来调用这几个对?/p>

的成员函数,

看看能否成功?/p>

?/p>

Run

?/p>

Stop

定义为虚函数?/p>

再试试看?/p>

程序名:

lab8_2

?/p>

cpp

?/p>

 

 

4.

 

思考题

 

1.

 

如何将一个运算符重载为类的成员函数?

 

函数类型

 

operator 

运算符(形参表)

 

{

 

 

 

 

 

 

函数体;

 

}

 

2.

 

如何将一个运算符重载为类的友元函数?

 

friend 

函数类型

 

operator 

运算符(形参表)

 

{

 

 

 

 

 

 

函数体;

 

}

 

3.

如何实现运行时刻的多态?

 

在基类的成员函数前加?/p>

virtual

,就可以在它的派生类中声明相同名字和类型的成员函数,

在运行过程中,系统会自动判断并调用相应类中的成员函数,从而在调用过程中实现多态?/p>

 

 

5.

 

源程?/p>

 

1.

 

lab8_1.cpp

 

#include<iostream>

 



ļ׺.doc޸Ϊ.docĶ

  • 2016°꡶Сѧѧ֪ʶ⼰𰸽 - ͼ
  • S7-200PLCԶϴϵͳƱҵ
  • 2016ְӢԱعɣ棩
  • ⴬ϰ
  • 人ѧ ǿѵMATLABͼ
  • ҩֲ︴ϰ1
  • Java2ʵý̡̳κϰο
  • 16ش˼·
  • ԭϰ3
  • ½صĿ-ʲִĽĿо - ͼ

վ

԰ Ͼλ
ϵͷ779662525#qq.com(#滻Ϊ@)