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();
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!