摘要:
正确選擇參數:厘清輸入參數、輸出參數,厘清值參數和引用參數。正确地傳遞參數。
正确選擇參數是通過值、通過引用還是通過指針傳遞,是一種能夠最大程度提高安全性和效率的好習慣。
選擇如何傳遞參數時,應該遵循一下準則。對于隻輸入參數:
1.始終用const限制所有指向隻輸入參數的指針和應用。
2.優先通過值來取得原始類型(如char、float)和複制開學比較低的值對象(如point、complex<float>)的輸入。
3.優先按const的引用取得其他使用者定義類型的輸入;
4.如果函數需要其參數的副本,則可以通過值傳遞代替
對于輸出參數或者輸入/輸出參數:
1.如果參數是可選的(這樣調用者可以傳遞null表示“不适用的”或“無需關心的”值),或者函數需要儲存這個指針的副本或者操控參數的所有權,那麼應該優先通過(智能)指針傳遞;
2.如果參數是必須的,而且函數無需儲存指向參數的指針,或者無需操控其所有權,那麼應該優先通過引用傳遞。這表明參數是必須的,而且調用者必須提供有效對象。