Hỏi về biến toàn cục c++

Sign Up

Log In

Hỏi về biến toàn cục c++

biến toàn cục dùng để làm gì,và khai báo nó như thế nào,nó có lợi ích gì.
Mong các bác giúp giùm mình với

tuonglam:

tuonglam:

biến toàn cục dùng để làm gì,và khai báo nó như thế nào,nó có lợi ích gì.Mong các bác giúp giùm mình với

Biến toàn cục có phạm vi hoạt động trên toàn bộ chương trình.
Lợi ích là không cần truyền vào trong hàm nhưng vẫn dùng được (mình dùng biến toàn cục để giảm số lượng đối số truyền vào hàm).
Mình thường khai báo biến toàn cục ngay trước khi khai báo hàm main
Khi khai báo biến toàn cục thì giá trị mặc định của nó là 0.

4 Likes

Biến mà được khai báo bên ngoài phạm vi của tất cả các hàm gọi là biến toàn cục (global variables). Biến toàn cục có phạm vi toàn chương trình. Nghĩa là chúng có thể được truy cập ở mọi nơi trong chương trình của bạn và chỉ bị hủy bỏ khi chương trình kết thúc.

Bởi vì biến toàn cục có phạm vi toàn chương trình, nên chúng có thể được sử dụng trong nhiều file. Trong bài viết chương tình với nhiều file, bạn đã học được cách sử dụng một hàm được khai báo trong file khác. Bạn có thể sử dụng khai báo forward hoặc một header file.

Đối với biến cũng tương tự như vậy, bạn cũng có thể sử dụng biến toàn cục trong file khác bằng cách sử dụng khai báo forward hoặc dùng hearder file, bằng từ khóa extern. extern sẻ báo cho trình biên dịch biết bạn không khai báo một biến mới mà chỉ cho trình biên dịch biết rằng biến đó đã được khai báo ở một nơi khác.

Tuy nhiên, Việc sử dụng biến cục bộ có tên trùng với biến toàn cục có thể gây ra rất nhiều phiền phức, bạn nên tránh ko nên sử dụng khi có thể.

P/S: Bạn nên tránh sử dung biến toàn cục, bởi vì: chúng làm tăng sự phực tạp của chương trình bạn lên rất nhiều. Ví dụ, nếu bạn muốn kiểm tra một cách chi tiết một chương trình và bạn muốn biết biến toàn cục g_nValue được sử dụng như thế nào. Bởi ví nó là biến toàn cục, nên nó có thể được sử dụng ở bất kỳ đâu trong chương trình, bạn phải xem xét chi tiết từng dòng code trong mỗi file. Trong một chương trình có có hàng triệu dòng code, bạn sẻ mất rất rất nhiều thời gian, nếu không muốn nói là không thể.

3 Likes

vậy khi áp dụng xóa và chèn trong mảng thì như thế nào
ví dụ: xuất 3 phần tử 1 2 3
chèn 1 phần tử có giá trị là 4 vậy xuât ra 1 2 3 4
xóa 1 phần tử có vị trí là 4 vậy xuất ra 1 2 3
thì dùng biến toàn bộ như thế nào

Theo mình trong trường hợp này việc sử dụng biến toàn cục không khác biệt so với khi sử dụng biến cục bộ.

5 Likes

Như em đã nói ở trên, anh nên hạn chế dung biến cục bộ trong bất kỳ trường hợp nào, chỉ khi phải quá ức chế mới dung biến toàn cục thôi. Mà bài này dung biến cục bộ ngon lành mà anh.

1 Like

s a làm không ra a nhập 1 2 3 xuất 1 2 3
chèn vị trí 4 thành 1 2 3 4 rồi khi a xóa 1 phần tử 3 thì còn 1 2
nó không tham chiếu chỗ a chèn mà nó lại tham chiếu tới cái phần nhập đầu tiên ah e

Home
Categories
FAQ/Guidelines
Terms of Service
Privacy Policy


83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?