第四章、类与对象

4.1 面向对象程序设计的基本特点

  (1)抽象

  (2)封装

  (3)继承

  (4)多态

4.2 类和对象

  例题1------时钟类的完整程序

  (1)主要思路

    ①定义一个时钟类Clock,并定义其中的时,分,秒等类的属性。

    ②设计时钟类Clock的行为:setTime用来设定当前的时间;showTime用来显示已设定的时间。

    ③在main函数中定义一个时钟Clock的对象(实例化一个类的对象)通过调用Clock的setTime来设置时间,通过showTime来显示已设定的时间。

  (2)流程图

 

 

  (3)伪代码

    class Clock

{

  public:

  int hour,minute,second;

  setTime(hour,minute,second);

  showTime();

  cout<<时<<分<<秒<<endl;

};

main()

{

Clock myclock;

 

}

  (4)代码

  

 1 #include <iostream>
 2 using namespace std;
 3 class Clock
 4 {
 5 public:
 6     void setTime(int newH = 0, int newM = 0, int newS = 0); //带默认参数的成员函数     声明
 7     void showTime(); //声明
 8 private:
 9     int hour;
10     int minute;
11     int second;
12 };
13 void Clock::setTime(int newH, int newM, int newS) //实现setTime
14 {
15     hour = newH;
16     minute = newM;
17     second = newS;
18 }
19 inline void Clock::showTime() //实现
20 {
21     cout << hour << ":" << minute << ":" << second << endl;
22 }
23 int main()
24 {
25     Clock myclock;     //实例化clock对象
26     cout << "第一次设定的时间为:" << endl;
27     myclock.setTime(); //将时间设定为初始值0:0:0
28     myclock.showTime();//显示默认时间
29     cout << "第二次设定的时间为:" << endl;
30     myclock.setTime(8, 30, 30);//设定当前时间
31     myclock.showTime();//显示当前时间
32     return 0;
33 }

 

  (5)总结

    ①类的行为(函数)可在类内声明,在类外实现

        返回值类型  类名::函数名(形参)

    ②类对象的行为可以通过对象名.函数名()来调用

    ③内联函数的特点:

            内容相对简单且调用次数较多,效果与普通函数相同

    ④带默认参数的成员函数

      如果调用这个函数时没有给出实参,就会按默认参数给各属性赋值

 

  

  

 

posted @ 2023-04-10 20:31  连师傅只会helloword  阅读(50)  评论(0)    收藏  举报