首页 > 编程语言 > 详细

c++的重载在计算器中的应用

时间:2016-03-13 00:32:51      阅读:232      评论:0      收藏:0      [点我收藏+]

c++的重载是指同一函数名可实现不同的功能,成员函数被重载的特征:
(1)相同的范围(在同一个类中);
(2)函数名字相同;
(3)参数不同;
(4)virtual 关键字可有可无。

 

本次计算器中,中缀转后缀需要进行符号压栈,而计算的时候需要数字的计算,而栈的实现可以通过重载来实现,即提高效率又能更方便的使用。

示例如下:

bool Push(double i){  //不同数值代表不同符号
        lnkNode *tmp=new lnkNode(i);
        tmp->Setnext(top);
        top=tmp;
        size++;
        return true;
    }
    bool Push(long n,long d){
        lnkNode *tmp=new lnkNode(n,d);
        tmp->Setnext(top);
        top=tmp;
        size++;
        return true;
    }
    bool Pop(double &item){
        lnkNode *tmp;
        if(0==size){
            printf("emptyerror");
            return false;
        }
        item=top->Getinfo();
        tmp=top->Getnext();
        delete top;
        top=tmp;
        size--;
        return true;
    }

    bool Pop(long &n,long &d){
        lnkNode *tmp;
        if(0==size){
            printf("emptyerror");
            return false;
        }
        n = top->Getnt();
        d = top->Getdt();
        tmp = top->Getnext();
        delete top;
        top = tmp;
        size--;
        return true;
    }

 

c++的重载在计算器中的应用

原文:http://www.cnblogs.com/ljx1412/p/5270897.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!