面向对象: 多态(动态绑定)

写程序的道理就和做其他任何事是一样的, 比如炒个菜, 或者用洛阳铲来考古探方. 下面用其中任何一种事情来进行多态性的实现方法吧:
        炒菜(实现多态):
        1. 原料: 父类一个, 子类一个或多个
                     父类里面准备虚函数一个或多个.
                     子类里面准备相应的虚函数的实现一个或多个.
                    
                     父类的指针一个.
                     子类对象一个或多个.
                      
        2. 烹调过程:
                      a. 先创建一个父类: class Person, 里面声明虚函数: virtual void study();
                            创建一个子类: class Student, 里面声明函数:  void study(); 
                            创建一个子类: class Teacher, 声明函数: void study();
                            实现函数:
                                            Student::void study() { cout << " 学生们听老师讲课来学习c++ " << endl; };
                                            Teacher::void study(){ cout << " 老师们翻阅学习资料学习c++  " << endl; };
                      
                       b. main()函数中:
                             首先, 创建一个父类的指针:
                                    Person *person;
                              其次, 创建子类的对象:
                                    Student stu = new Student;
                                    Teacher teac = new Teacher;
                              实现多态: 用父类指针指向各个子类, 然后通过这一个指针, 执行相同名字的不同实现:
                                    person = &stu;
                                    person->study();            //     学生们听老师讲课来学习c++ 


                                    person = &teac;
                                    person->study();            //    老师们翻阅学习资料学习c++
                                    
                             
        我现在是前敌总指挥员, 现命令各纵队司令发起最后总攻, 我虽然只发布了同一个命令, 就是进攻, 但是各个纵队和军团进行攻击的方式将各不相同, 这就是面向对象编程思想中的多态.           

 

 

 

                          

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章