Mekanisme lulus parameter fungsi C++ dibahagikan kepada lulus mengikut nilai dan lulus dengan rujukan. Melewati nilai mencipta salinan nilai parameter Pengubahsuaian kepada salinan tidak menjejaskan parameter asal Digunakan untuk jenis data asas. Lulus dengan rujukan menghantar alamat parameter secara langsung, membenarkan fungsi mengubah suai parameter asal, untuk jenis kompleks.
Mekanisme Lulus Parameter Fungsi C++
Dalam C++, mekanisme lulus parameter menentukan cara fungsi menerima parameter yang dihantar daripada pemanggil. Terdapat dua mekanisme: pass-by-value dan pass-by-reference.
Pass by value
Pass by value mencipta salinan nilai parameter dan salinan disimpan dalam bingkai tindanan fungsi. Sebarang pengubahsuaian pada salinan tidak akan menjejaskan parameter sebenar dalam fungsi panggilan. Melepasi nilai biasanya digunakan untuk jenis data primitif (int, apungan, dll.).
Contoh kod:
void increment(int value) { value++; // 修改局部副本 } int main() { int a = 5; increment(a); std::cout << a << std::endl; // 输出 5,因为 a 的值没有改变 }
Lulus melalui rujukan
Lulus melalui rujukan tidak mencipta salinan parameter, sebaliknya menghantar alamat parameter itu sendiri melalui rujukan. Ini membolehkan fungsi mengubah suai terus parameter asal dalam fungsi panggilan. Rujukan lulus biasanya digunakan untuk jenis kompleks (objek, bekas, dll.).
Contoh kod:
void increment(int& value) { value++; // 修改原始参数 } int main() { int a = 5; increment(a); std::cout << a << std::endl; // 输出 6,因为原始参数被修改 }
Kes praktikal
Melalui contoh nilai: Kira kuasa dua parameter fungsi.
int square(int value) { return value * value; } int main() { int a = 5; int result = square(a); std::cout << result << std::endl; // 输出 25,因为按值传递不会影响 a }
Lulus dengan contoh rujukan: Tukar nilai dua parameter fungsi.
rreeeeAtas ialah kandungan terperinci Apakah mekanisme lulus parameter fungsi C++?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!