铅笔

在你的害怕中坚持的越多,你就会越自信
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

重载()

Posted on 2021-10-12 11:32  黑色の铅笔  阅读(34)  评论(0编辑  收藏  举报

 

#include <iostream>

using namespace std;
class Base
{
public:
    Base(int i){
        m_base=i;
    }
virtual void Display(const std::string &strShow = "Base class !")
    {
    std::cout <<"Base class !" << std::endl;
    std::cout <<"strShow:" << strShow<<std::endl;
    }

private:
    int m_base;
};
class Derive: public Base
{
    public:
    Derive(int i,int j):Base(i){
        m_drive=j;
    }
    virtual void Display(const std::string &strShow = "Derive class !")
    {
    std::cout << "Derive class !";
    std::cout <<"strShow:" << strShow<<std::endl;
    }
    operator int() const throw ()
    { return m_drive; }

protected:
    int m_drive;
};
int main()
{
    Derive derive(1,2);
    int test=(int)derive;///这里不是强制类型转换,是直接使用()操作符

    std::cout <<"test:" <<test<< std::endl;

    return 0;
}