Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> C++

Tại sao nên tránh biến toàn cục (global variables) trong C/C++?


Nên tránh biến toàn cục trong mọi ngôn ngữ, không chỉ C++. Chúng làm ô nhiễm không gian tên toàn cục, gây bug khôn lường trong dự án lớn vì có thể truy cập/sửa đổi từ bất kỳ file nào. Lý do biến toàn cục được coi là xấu:

  • Biến toàn cục có thể bị thay đổi bởi bất kỳ phần code nào, khó nhớ/luận giải mọi cách dùng có thể.
  • Không có kiểm soát truy cập. Không thể giới hạn chỉ một phần chương trình.
  • Gây coupling (liên kết) chặt chẽ giữa các phần code.
  • Gây ô nhiễm không gian tên, dẫn đến gán giá trị lại vô tình.
  • Test chương trình dùng biến toàn cục rất khó khăn do khó tách biệt chúng khi test.

Lưu ý: Đôi khi bắt buộc dùng biến toàn cục. Nhưng trước khi dùng, hãy chắc chắn không có phương án thay thế. Tham khảo thêm: https://wiki.c2.com/?GlobalVariablesAreBad