Teknik pengaturcaraan biasa untuk menghantar parameter fungsi dalam C++

WBOY
Lepaskan: 2024-04-12 22:18:01
asal
393 orang telah melayarinya

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 不会改变
}
Salin selepas log masuk

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
}
Salin selepas log masuk

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
}
Salin selepas log masuk

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()
}
Salin selepas log masuk

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!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan