zoukankan      html  css  js  c++  java
  • 关于cmp函数参数中的&符号

    关于cmp函数参数中的&符号

    关于sort函数中的cmp函数有着不同的写法,以刚刚的整形元素比较为例
    还有人是这么写的:

    bool cmp(const int &a, const int &b){  
        return a>b;  
    }  
    
    int a[10];  
    sort(a,a+10,cmp); 

    思考:int 和const int&有什么区别呢?
    原来:作为函数参数:int这种写法是值传递,const int&则是引用传递
    “值传递”——由于函数将自动产生临时变量用于复制该参数,效率较低。
    “引用传递”仅借用一下参数的别名而已,不需要产生临时对象。效率较高
    tips:“引用传递”有可能改变参数,const修饰可以解决这个问题。
     

  • 相关阅读:
    MySQL大数据分页调优实践
    CentOS 搭建L2TP
    CentOS 搭建SS5
    CentOS 搭建PPTP
    CentOS 防火墙 firewalld
    CentOS 初始化账号
    nginx升级与回退
    Python
    python
    linux
  • 原文地址:https://www.cnblogs.com/qie-wei/p/10160185.html
Copyright © 2011-2022 走看看