zoukankan      html  css  js  c++  java
  • 虚函数的应用

    //

    //  main.cpp

    //  2013-7-17作业3

    //

    //  Created by 丁小未 on 13-7-17.

    //  Copyright (c) 2013 dingxiaowei. All rights reserved.

    //

     

    #include <iostream>

    usingnamespacestd;

    class A

    {

    public:

        A()

        {

            cout<<"A ";

        }

        virtual void func()

        {

            cout<<"A::func ";

        }

        virtual void func1()

        {

            cout<<"A::func1 ";

        }

    };

     

    class B : publicA

    {

    public:

        B()

        {

            cout<<"B ";

            func();

        }

        void func1()

        {

            cout<<"B::func ";

        }

    };

     

     

    int  main(void )

    {

        A *a = newB();    //先创建B对象,又因为B是继承的A,所以在构造B之前要先构造A,所以输出A,然后构造B,输出B,然后调用func(),输出A::func

        a->func();   //由于a中的func()方法虽然定义的是虚函数,但是由于B类中没有该重名函数,所以直接调用A中的func方法,输出A::func

        a->func1();  //由于A中的func1方法是虚函数,且B中也有该方法,所以就调用B中的func1方法,输出B::func

        B b;   //实例化一个B对象,先实例化他的基类,调用A的构造方法,打印输出A,然后在调用B的构造方法,打印输出B,在调用A中的func方法,打印输出A::func

        b.func(); //调用继承自A中的func方法

    }

     

    感谢来访,共同学习!
  • 相关阅读:
    asp.net c#中去掉最后一个字符和去掉第一个字母
    两个div并排
    VS.Net2005中使用本地化功能实现多语言的切换
    gridview嵌套DropDownList選定值[转]
    C# 获取系统时间
    NERDTree,好用的文件浏览器
    通过$.browser来判断浏览器
    vim 智能提示
    让vim显示函数列表
    vim中文乱码解决方法
  • 原文地址:https://www.cnblogs.com/dingxiaowei/p/3197545.html
Copyright © 2011-2022 走看看