下面是一些指導原則:
對於使用傳遞的值而不作修改的函數。
1.如果數據對象很小,如內置數據類型或小型結構,則按值傳遞。
2.如果數據對象是數組,則使用指針,因爲這是唯一的選擇,並將指針聲明爲指向const 的指針。
3.如果數據對象是較大的結構,則使用const指針或const引用,以提高程序的效率。這樣可以節省複製結構所需的時間和空間。
4.如果數據對象是類對象,則使用const引用。類設計的語義常常要求也使用引用,這是c++新增這項特性的主要原因。因此,傳遞類對象參數的標準方式是按引用傳遞。
對於修改調用函數中數據的函數:
1.如果數據對象是內置數據類型,則使用指針。如果看到諸如fixit(&x)這樣的代碼(其中x是int),則很明顯,該函數將修改x。
2.如果數據對象是數組,則只能使用指針。
3.如果數據對象是結構,則使用引用或指針。
如果數據對象是類對象,則使用引用。