Rumah > pembangunan bahagian belakang > C++ > Apakah Kelayakan Rujukan (& dan &&) dalam Fungsi Ahli C dan Bagaimana Ia Mempengaruhi Rujukan Objek?

Apakah Kelayakan Rujukan (& dan &&) dalam Fungsi Ahli C dan Bagaimana Ia Mempengaruhi Rujukan Objek?

Linda Hamilton
Lepaskan: 2024-12-10 15:22:12
asal
411 orang telah melayarinya

What are Reference Qualifiers (& and &&) in C   Member Functions and How Do They Affect Object References?

Kelayakan Rujukan dalam Pengisytiharan Fungsi Ahli

Dalam C , ampersand tunggal (&) dan ampersand berganda (&&) boleh digunakan sebagai kelayakan rujukan dalam pengisytiharan fungsi ahli. Kelayakan ini mempengaruhi jenis parameter objek tersirat untuk fungsi ahli bukan statik.

Ampersan Tunggal (Rujukan Tunggal)

Ampersan tunggal (&) menunjukkan bahawa fungsi ahli boleh digunakan apabila objek adalah rujukan nilai (iaitu, ia merujuk kepada objek sedia ada). Dalam erti kata lain, fungsi dipanggil dengan objek yang diluluskan melalui rujukan.

Contoh berikut menunjukkan penggunaan kelayakan rujukan tunggal:

class wrap {
public:
   operator obj() const & { ... } // Copy from me.
};
Salin selepas log masuk

Di sini, operator obj( ) fungsi boleh digunakan pada rujukan objek seperti my_object.operator obj().

Perbandingan dengan No Ampersand

Jika tiada kelayakan rujukan ditentukan, parameter objek tersirat ialah rujukan lnilai secara lalai. Oleh itu, pengisytiharan fungsi berikut adalah bersamaan dengan yang di atas:

class wrap {
public:
   operator obj() const { ... } // Copy from me.
};
Salin selepas log masuk

Nota Tambahan

  • Ampersan berganda (&&) digunakan untuk menentukan rujukan nilai (iaitu, ia merujuk kepada objek sementara), yang digunakan apabila objek itu akan menjadi berpindah.
  • Kelayakan rujukan membantu dalam mengendalikan rujukan nilai dan nilai dengan betul dan boleh mengoptimumkan prestasi dengan mengelakkan salinan yang tidak diperlukan.
  • Adalah penting untuk menggunakan kelayakan rujukan yang betul untuk memastikan fungsi ahli digunakan dengan betul dan cekap.

Atas ialah kandungan terperinci Apakah Kelayakan Rujukan (& dan &&) dalam Fungsi Ahli C dan Bagaimana Ia Mempengaruhi Rujukan Objek?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan