Trong nhiều ngôn ngữ bạn được phép khai báo một biến và sử dụng nó trước khi khởi tạo nó.Lợi ích của việc cho phép biến không được khởi tạo là gì?
Ví dụ, trong C++, bạn có thể viết một đoạn như:
int x;
cout << x;
này sẽ đương nhiên trở khó lường (tốt, trừ khi bạn biết làm thế nào chương trình của bạn đã được lập bản đồ ra bộ nhớ) kết quả, nhưng câu hỏi của tôi là, tại sao hành vi này được phép bởi trình biên dịch?
Có một số ứng dụng hoặc hiệu quả từ việc cho phép sử dụng bộ nhớ chưa được khởi tạo không?
chỉnh sửa: Đã xảy ra với tôi rằng việc khởi tạo tối đa người dùng sẽ giảm thiểu mức ghi cho các phương tiện nhớ có tuổi thọ giới hạn (ghi chu trình). Chỉ là một ví dụ cụ thể dưới tiêu đề "hiệu suất" nói trên. Cảm ơn.
Nó sẽ cải thiện hiệu suất nhiều hơn bằng cách thậm chí không khai báo nó? Bằng cách đó, bộ nhớ thậm chí sẽ không cần phải được cấp phát cho biến đó. Bất cứ ai trích dẫn hiệu suất cho loại mã này chỉ đơn giản là sai. –
Từ khóa là * cũ nhất *. 40 năm trước khi C đã được phát triển, "lãng phí" một hoặc hai lệnh để tự động khởi tạo một biến có thể thực sự quan trọng. – dan04
Làm lãng phí một hướng dẫn có thể có giá trị, nhưng theo nghĩa hiệu suất, việc có thêm hướng dẫn (hoặc hai hoặc ba) sẽ làm cho ứng dụng ít hoạt động hơn. –