Rumah >pembangunan bahagian belakang >C++ >Mengapa Perlaksanaan Alih Lalai Tidak Hadir dalam Draf C 11 Awal?
Dalam versi awal piawai C 11, penjanaan tersirat pembina bergerak dan pengendali tugasan ialah topik perbahasan. Ini membawa kepada perubahan dalam draf seterusnya, mengakibatkan tingkah laku berikut dalam penyusun yang tersedia pada masa ini:
Sejak keluaran November C Standard (N3225), pembina dan tugasan langkah tersirat pengendali boleh dijana di bawah syarat berikut:
Keputusan untuk tidak memasukkan pelaksanaan pembina/tugasan pindah lalai dalam draf awal adalah hasil daripada kebimbangan tentang potensi kekeliruan dan tingkah laku yang tidak dijangka . Walau bagaimanapun, semakan seterusnya telah menangani kebimbangan ini dengan mengetatkan syarat untuk penjanaan pergerakan tersirat.
Jika anda sedang mencari cara untuk menggunakan semantik pindah tanpa menulis pembina/operator tugasan secara eksplisit , anda boleh menggunakan [GManNickG's makro](https://stackoverflow.com/a/12316884/8674521). Makro ini menjana semantik pergerakan yang diperlukan untuk kelas anda.
Dengan melaksanakan semantik pindah, anda boleh menarik diri daripada menyediakan fungsi ahli swap juga.
Atas ialah kandungan terperinci Mengapa Perlaksanaan Alih Lalai Tidak Hadir dalam Draf C 11 Awal?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!