Jadual Kandungan
Contoh
Output
Rumah pembangunan bahagian belakang C++ Teknologi lulus parameter dalam C/C++

Teknologi lulus parameter dalam C/C++

Aug 31, 2023 pm 01:41 PM
lulus dengan rujukan Kaedah lulus parameter Lulus nilai

Teknologi lulus parameter dalam C/C++

Dalam C, kita boleh lulus parameter dalam dua cara berbeza. Ini adalah panggilan mengikut nilai dan panggilan mengikut alamat dan dalam C++ kita boleh mendapatkan teknik lain. Ini dipanggil memanggil dengan rujukan. Mari kita lihat kesannya dan cara ia berfungsi.

Mula-mula kita akan lihat panggilan mengikut nilai. Dalam teknik ini, parameter disalin ke dalam parameter fungsi. Jadi jika beberapa pengubahsuaian dibuat, ini akan mengemas kini nilai yang disalin, bukan nilai sebenar.

Contoh

#include <iostream>
using namespace std;
void my_swap(int x, int y) {
   int temp;
   temp = x;
   x = y;
   y = temp;
}
int main() {
   int a, b;
   a = 10;
   b = 40;
   cout << "(a,b) = (" << a << ", " << b << ")\n";
   my_swap(a, b);
   cout << "(a,b) = (" << a << ", " << b << ")\n";
}
Salin selepas log masuk

Output

(a,b) = (10, 40)
(a,b) = (10, 40)
Salin selepas log masuk

Panggilan melalui alamat berfungsi dengan menghantar alamat pembolehubah ke dalam fungsi. Jadi apabila fungsi mengemas kini nilai yang ditunjukkan oleh alamat itu, nilai sebenar dikemas kini secara automatik.

Contoh

#include <iostream>
using namespace std;
void my_swap(int *x, int *y) {
   int temp;
   temp = *x;
   *x = *y;
   *y = temp;
}
int main() {
   int a, b;
   a = 10;
   b = 40;
   cout << "(a,b) = (" << a << ", " << b << ")\n";
   my_swap(&a, &b);
   cout << "(a,b) = (" << a << ", " << b << ")\n";
}
Salin selepas log masuk

Output

(a,b) = (10, 40)
(a,b) = (40, 10)
Salin selepas log masuk
Salin selepas log masuk

Sama seperti panggilan alamat, di sini kami menggunakan panggilan rujukan. Ini ialah ciri khusus C++. Kita perlu lulus pembolehubah rujukan parameter, jadi untuk mengemas kininya, nilai sebenar akan dikemas kini. Hanya dalam definisi fungsi kita perlu meletakkan & sebelum nama pembolehubah.

Contoh

#include <iostream>
using namespace std;
void my_swap(int &x, int &y) {
   int temp;
   temp = x;
   x = y;
   y = temp;
}
int main() {
   int a, b;
   a = 10;
   b = 40;
   cout << "(a,b) = (" << a << ", " << b << ")\n";
   my_swap(a, b);
   cout << "(a,b) = (" << a << ", " << b << ")\n";
}
Salin selepas log masuk

Output

(a,b) = (10, 40)
(a,b) = (40, 10)
Salin selepas log masuk
Salin selepas log masuk

Atas ialah kandungan terperinci Teknologi lulus parameter dalam C/C++. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

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

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Cara Membuka Segala -galanya Di Myrise
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Menyahmistifikasi nilai lulus dan rujukan lulus dalam panggilan fungsi PHP Menyahmistifikasi nilai lulus dan rujukan lulus dalam panggilan fungsi PHP Apr 16, 2024 pm 02:39 PM

Panggilan fungsi dalam PHP boleh dihantar melalui nilai atau rujukan. Lalai adalah untuk lulus mengikut nilai, fungsi menerima salinan parameter, dan pengubahsuaian padanya tidak menjejaskan nilai asal. Rujukan lulus diisytiharkan dengan menambahkan simbol & sebelum parameter, dan fungsi tersebut secara langsung mengubah suai pembolehubah yang diluluskan. Melewati rujukan berguna apabila anda memerlukan fungsi untuk mengubah suai pembolehubah luaran, seperti elemen tatasusunan.

Adakah terdapat rujukan lewat dalam bahasa go? Adakah terdapat rujukan lewat dalam bahasa go? Dec 20, 2022 pm 12:09 PM

Tidak. Go tidak mempunyai pembolehubah rujukan, jadi tiada rujukan lulus semasa memanggil fungsi dalam bahasa Go. Setiap pembolehubah yang ditakrifkan dalam program Go menduduki lokasi memori yang unik Tidak mungkin untuk mencipta dua pembolehubah yang berkongsi lokasi memori yang sama adalah mungkin untuk mencipta dua pembolehubah yang menghala ke lokasi memori yang sama, tetapi ini tidak sama dengan dua pembolehubah berkongsi memori yang sama Lokasinya berbeza.

Bagaimana untuk memahami kaedah lulus nilai dengan betul dalam PHP Bagaimana untuk memahami kaedah lulus nilai dengan betul dalam PHP Mar 08, 2024 pm 03:30 PM

Cara memahami kaedah lulus nilai dengan betul dalam PHP PHP ialah bahasa skrip yang digunakan secara meluas dalam pembangunan Web, dan kaedah lulus parameter dalam PHP terutamanya termasuk lulus nilai dan lulus rujukan. Dan memahami bagaimana nilai dihantar dalam PHP adalah penting untuk menulis kod yang cekap. Artikel ini akan membincangkan kaedah lulus nilai dalam PHP secara terperinci dan menggunakan contoh kod khusus untuk membantu pembaca memahami dengan lebih baik. Konsep asas kaedah lulus nilai adalah untuk menyalin nilai pembolehubah dan menghantarnya kepada fungsi atau kaedah Operasi pada nilai dalam fungsi tidak akan menjejaskannya.

Apakah nilai lulus dan rujukan lulus Apakah nilai lulus dan rujukan lulus Dec 15, 2023 pm 03:03 PM

Melepasi nilai adalah untuk menghantar salinan parameter kepada fungsi, jadi fungsi menerima salinan nilai parameter, bukan parameter itu sendiri Sebarang pengubahsuaian pada parameter di dalam fungsi hanya akan mempengaruhi salinan ini dan bukan pembolehubah asal. nilai. Pass by reference adalah untuk menghantar alamat atau rujukan parameter kepada fungsi. Ini bermakna bahawa fungsi menerima rujukan kepada data asal, bukan salinan data. Sebarang pengubahsuaian pada parameter di dalam fungsi akan menjejaskan data asal secara langsung. Kedua-dua kaedah penyampaian ini mempunyai aplikasi, kelebihan dan keburukan tersendiri dalam bahasa pengaturcaraan dan senario yang berbeza.

Analisis terperinci tentang perbezaan antara hantaran nilai dan hantaran rujukan di Jawa Analisis terperinci tentang perbezaan antara hantaran nilai dan hantaran rujukan di Jawa Jan 30, 2024 am 08:11 AM

Analisis mendalam tentang perbezaan antara lulus nilai dan lulus rujukan dalam Java Dalam pengaturcaraan Java, kita sering menghadapi situasi lulus parameter, dan terdapat dua cara lulus parameter: lulus nilai dan lulus rujukan. Kedua-dua kaedah penghantaran ini mempunyai ciri dan senario aplikasi yang berbeza di Jawa. Pass-by-Value merujuk kepada menghantar nilai parameter sebenar kepada parameter formal apabila fungsi dipanggil Pengubahsuaian kepada parameter formal dalam fungsi tidak akan menjejaskan nilai parameter sebenar. Rujukan lewat

Perbezaan antara penunjuk struct dan pemindahan nilai struct dalam fungsi Golang Perbezaan antara penunjuk struct dan pemindahan nilai struct dalam fungsi Golang May 31, 2024 pm 07:43 PM

Dalam Go, parameter fungsi boleh dihantar mengikut nilai atau dengan penuding. Lulus nilai memberikan salinan, dan pengubahsuaian pada salinan tidak akan menjejaskan nilai asal, hantaran penunjuk melepasi alamat, dan pengubahsuaian pada kandungan akan ditunjukkan dalam nilai asal. Dalam amalan, hantaran penunjuk boleh digunakan untuk mengoptimumkan kod, contohnya semasa mengisih kepingan. Memilih kaedah penghantaran yang betul adalah penting untuk mengoptimumkan kod anda dan meningkatkan prestasi.

Apakah perbezaan antara lulus dengan nilai dan lulus dengan rujukan dalam java Apakah perbezaan antara lulus dengan nilai dan lulus dengan rujukan dalam java Jan 16, 2024 pm 04:18 PM

Perbezaan antara pemindahan nilai Java dan pemindahan rujukan: 1. Pemindahan jenis data asas 2. Pemindahan objek 3. Pengubahsuaian penunjuk rujukan; Pengenalan terperinci: 1. Pemindahan jenis data asas Untuk jenis data asas, Java menggunakan pemindahan nilai Apabila pembolehubah jenis data asas dihantar sebagai parameter kepada kaedah, nilai pembolehubah sebenarnya dipindahkan, bukan nilai. daripada pembolehubah. Rujukannya, yang bermaksud bahawa pengubahsuaian kepada parameter ini dalam kaedah tidak akan menjejaskan nilai pembolehubah asal 2. Pemindahan objek, untuk rujukan objek, keadaan adalah berbeza, dsb.

Penjelasan terperinci tentang perbezaan antara lulus mengikut nilai dan lulus melalui rujukan di Jawa dan kesannya Penjelasan terperinci tentang perbezaan antara lulus mengikut nilai dan lulus melalui rujukan di Jawa dan kesannya Jan 30, 2024 am 09:08 AM

Melepasi nilai dan lulus dengan rujukan dalam Java adalah konsep penting yang mesti difahami oleh setiap pengaturcara Java. Artikel ini akan menerangkan perbezaan antara kedua-duanya secara terperinci dan memberikan contoh kod yang berkaitan untuk membantu pembaca memahami konsep ini dengan lebih baik. Di Java, semua lulus parameter dicapai dengan lulus nilai. Iaitu, apabila kita lulus pembolehubah sebagai parameter kepada kaedah, apa yang sebenarnya dihantar kepada kaedah adalah salinan nilai pembolehubah. Oleh itu, sama ada jenis asas atau jenis rujukan, apa yang diluluskan ialah salinan nilainya, bukan nilainya

See all articles