Tại sao không ổn định không được chấp nhận trong C ++ 20?


17

Theo cppreference , hầu hết việc sử dụng volatiletừ khóa sẽ không được dùng trong C ++ 20. Nhược điểm của là volatilegì? Và giải pháp thay thế khi không sử dụng là volatilegì?


13
Có một số cách sử dụng volatileKHÔNG được phản đối, vì chúng rất hữu ích (ví dụ: trong mã tải trực tiếp hoặc lưu trữ từ các vị trí bộ nhớ được chỉ định, chẳng hạn như trong trình điều khiển thiết bị). Khá nhiều trong số "sử dụng không dùng nữa" có liên quan đến khả năng sử dụng các tính năng mà quá nhiều progammers sử dụng - không chính xác - như một phương tiện để tạo ra một nguyên tử truy cập biến đổi . Hiện tại thư viện C ++ (kể từ C ++ 11) cung cấp một phương tiện chính xác để đảm bảo quyền truy cập nguyên tử của các biến, do đó, không khuyến khích các lập trình viên sử dụng không chính xác volatilekhi mục đích là truy cập nguyên tử.
Peter


@Peter Những cách sử dụng điển hình của chất dễ bay hơi là không chính xác?
tò mò

Câu trả lời:


Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.