zoukankan      html  css  js  c++  java
  • Operator overload and inheritance

    默认, operator overload被继承时时隐藏的.

    代码
    //------------------------------------------------------
    class IComparor
    {
    public:
        
    virtual int operator()(int x, int y) = 0;
    };
    //------------------------------------------------------
    class ComparorA : public IComparor
    {
    public:
        
    using IComparor::operator();
        
    int operator()(int x, int y)
        {
            
    return x < y ? -1
                : x 
    > y ? 1
                : 
    0;
        }
    };
    //------------------------------------------------------
    class ComparorB : public IComparor
    {
    public:
        
    using IComparor::operator();
        
    int operator()(int x, int y)
        {
            
    return x < y ? 100
                : x 
    > y ? -100
                : 
    0;
        }
    };
    //------------------------------------------------------

    使用:

    IComparor* comparor = new ComparorB();
    int r1 = comparor->operator()(56);
    int r2 = (*comparor)(56);
  • 相关阅读:
    jQuery:一些小练习
    jQuery
    JavaWeb:笔记(三)
    JavaWeb:笔记(二)
    JavaWeb:笔记(一)
    JavaWeb:文件的上传下载
    JavaWeb:Listener
    基于RRT的机器人自主探索建图
    OpenNI2安装
    g2o初始化一些
  • 原文地址:https://www.cnblogs.com/mrfangzheng/p/1715680.html
Copyright © 2011-2022 走看看