Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Teknik pengaturcaraan biasa untuk menghantar parameter fungsi dalam C++

Teknik pengaturcaraan biasa untuk menghantar parameter fungsi dalam C++

WBOY
WBOYasal
2024-04-12 22:18:01348semak imbas

Kaedah lulus parameter fungsi dalam C++ termasuk: lulus nilai (menyalin nilai parameter sebenar) lulus rujukan (secara langsung mengendalikan nilai parameter sebenar) lulus penunjuk (terus mengakses alamat parameter sebenar) lulus rujukan const ( membaca nilai parameter sebenar, Tetapi ia tidak boleh diubah suai)

C++ 函数参数传递方式的常见编程技巧

Petua pengaturcaraan biasa untuk lulus parameter fungsi dalam C++

Dalam C++, parameter fungsi boleh diluluskan dalam empat cara: lulus nilai, lulus rujukan, lulus penunjuk dan lulus rujukan const. Untuk keperluan yang berbeza, kaedah penyampaian yang berbeza adalah lebih sesuai.

Panggil dengan Nilai

Nilai lulus ialah cara paling mudah dan langsung, iaitu menyalin nilai parameter sebenar di dalam fungsi. Kelebihannya ialah perubahan kepada parameter sebenar dielakkan daripada menjejaskan nilai parameter sebenar itu sendiri. Contoh:

void increment(int num) {
  num++;  // 只能更改 num 的局部副本
}

int main() {
  int x = 5;
  increment(x);  // x 的副本被传递给 increment()
  cout << x;  // 输出 5,x 不会改变
}

Panggil melalui Rujukan

Melalui rujukan membolehkan nilai parameter sebenar dimanipulasi secara langsung dalam fungsi. Kelebihannya ialah ia mengelakkan proses pemindahan nilai dan meningkatkan kecekapan. Contoh:

void increment(int& num) {
  num++;  // 直接更改实参的值
}

int main() {
  int x = 5;
  increment(x);  // x 的引用被传递给 increment()
  cout << x;  // 输出 6
}

Panggil dengan Penunjuk

Melalui penuding membolehkan akses terus ke alamat parameter sebenar dalam fungsi. Kelebihannya ialah ia boleh melakukan operasi yang lebih fleksibel pada kandungan yang ditunjukkan oleh penunjuk. Contoh:

void swap(int* a, int* b) {
  int temp = *a;
  *a = *b;
  *b = temp;
}

int main() {
  int x = 5, y = 7;
  swap(&x, &y);  // 传递 x 和 y 的地址
  cout << x << " " << y;  // 输出 7 5
}

Panggil dengan const Rujukan

Melalui rujukan const adalah serupa dengan menghantar rujukan, tetapi fungsi tidak boleh mengubah suai nilai parameter sebenar. Kelebihannya ialah pengubahsuaian yang tidak disengajakan dapat dielakkan dan keselamatan kod dipertingkatkan. Contoh:

void print(const int& num) {
  cout << num;  // 只读访问实参
}

int main() {
  int x = 5;
  print(x);  // x 的 const 引用被传递给 print()
}

Kes praktikal

Apabila mengira luas bulatan, parameter fungsi boleh menjadi jejari bulatan. Untuk mengelakkan overhed tambahan yang disebabkan oleh menghantar nilai, anda boleh memilih untuk menghantar rujukan dan membiarkan fungsi beroperasi secara langsung pada nilai jejari.

rreeee

Atas ialah kandungan terperinci Teknik pengaturcaraan biasa untuk menghantar parameter fungsi dalam C++. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn