Mengapa volatile tidak digunakan lagi dalam C ++ 20?


17

Menurut cppreference , sebagian besar penggunaan volatilekata kunci akan ditinggalkan dalam C ++ 20. Apa kerugiannya volatile? Dan apa solusi alternatif saat tidak menggunakan volatile?


13
Ada beberapa penggunaan volatileyang TIDAK usang, karena berguna (misalnya dalam kode yang secara langsung memuat atau menyimpan dari lokasi memori yang ditentukan, seperti di driver perangkat). Cukup banyak "penggunaan yang tidak digunakan lagi" terkait dengan kemampuan untuk menggunakan fitur yang terlalu banyak digunakan oleh progammers - secara tidak benar - sebagai cara untuk membuat atom akses variabel . Pustaka C ++ sekarang (karena C ++ 11) menyediakan cara yang benar untuk memastikan akses variabel variabel, sehingga masuk akal untuk mencegah programmer dari menggunakan salah volatileketika tujuannya adalah akses atom.
Peter


@ Peter Yang umum menggunakan volatile tidak benar?
curiousguy

Jawaban:


Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.