const形参与非const形参
生活随笔
收集整理的這篇文章主要介紹了
const形参与非const形参
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
應該將不修改相應實參的形參定義為const引用,否則將會帶來如下問題:
1.不能通過字符串字面值來調用該函數
2.若定義函數如下
1 int A(string &a){} 2 int B(const string &b) 3 { 4 A(b);//編譯錯誤 5 }則會引起編譯錯誤。
3.引用傳遞右值也是不允許的
1 int A(int &a){} 2 int main() 3 { 4 short v1=0; 5 const int v2=42; 6 int v3=A(v1);//錯誤,v1不是int 7 v3=A(v2);//錯誤,v2是const 8 v3=A(0);//錯誤,非左值 9 v3=A(v1+v2);//錯誤,非左值 10 int v4=A(v3);//正確 11 }?
轉載于:https://www.cnblogs.com/binger1990/archive/2012/12/19/2824574.html
與50位技術專家面對面20年技術見證,附贈技術全景圖總結
以上是生活随笔為你收集整理的const形参与非const形参的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 一、搭建Extjs 4.1开发环境
- 下一篇: WindowsXp 平台安装Oversi