Rumah > pembangunan bahagian belakang > C++ > Berapa Lama Hujah Fungsi Sementara Hidup?

Berapa Lama Hujah Fungsi Sementara Hidup?

Susan Sarandon
Lepaskan: 2024-12-27 19:20:10
asal
503 orang telah melayarinya

How Long Do Temporary Function Arguments Live?

Argumen Fungsi Sementara Sepanjang Hayat

Apabila mencipta objek sementara sebagai hujah kepada fungsi, piawaian menjamin bahawa pemusnahnya akan dipanggil pada akhir ungkapan penuh yang mengandungi panggilan fungsi.

Terperinci Penjelasan

Objek sementara dicipta apabila argumen fungsi ialah ungkapan yang menilai kepada objek. Dalam contoh yang diberikan, MyClass(42) ialah objek sementara.

Hayat objek sementara dilanjutkan sehingga penghujung ungkapan penuh yang menjadi sebahagian daripadanya. Ungkapan penuh biasanya berakhir pada koma bertitik (`;) yang menyimpulkan pernyataan yang mengandungi ungkapan tersebut. Dalam kes ini, ungkapan penuh berakhir dengan kurungan penutup panggilan fungsi ke myFunction().

Oleh itu, pemusnah objek MyClass sementara yang dicipta dalam MyClass(42) akan dipanggil sebelum pelaksanaan diteruskan ke kenyataan seterusnya selepas panggilan fungsi.

Melanjutkan Sementara Sepanjang hayat

Walaupun objek sementara pada umumnya berumur pendek, hayatnya boleh dilanjutkan dengan mengikatnya pada rujukan tetap. Contohnya:

const MyClass& r = getMyClass();
Salin selepas log masuk

Dalam kes ini, objek sementara yang dikembalikan oleh getMyClass() akan kekal sehingga akhir blok yang disertakan, memanjangkan hayatnya melebihi ungkapan penuh.

Atas ialah kandungan terperinci Berapa Lama Hujah Fungsi Sementara Hidup?. 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