Chuyên mục
Hỏi Đáp

Từ Khóa namespace — Modern C

không gian tên là gì?

không gian tên là một cơ chế trong c ++ cho phép nhóm các thực thể có liên quan (lớp, đối tượng, chức năng …) thành các nhóm khác nhau theo tên, tên của mỗi thực thể trong mỗi không gian tên được gắn vào. như một tiền tố.

không gian tên được sử dụng để làm gì?

Trong c ++, việc không sử dụng không gian tên (hoặc có thể chia sẻ không gian tên) có thể gây ra một số vấn đề. ví dụ trong ví dụ:

giả sử rằng cả hai lớp đều cần thiết để xử lý một vấn đề chuỗi. bây giờ có thể dễ dàng nhận thấy rằng không thể sử dụng thư viện lib1.h và lib2.h cùng một lúc. vì trình biên dịch sẽ báo rằng lớp chuỗi được khai báo lại, hoặc trình biên dịch không báo lỗi nên chúng ta không thể phân biệt được hai lớp chuỗi này.

hiện tại, việc sử dụng không gian tên sẽ giải quyết được vấn đề trên:

sau định nghĩa như vậy, các lớp trên có thể được gọi bằng toán tử quan hệ (: 🙂 như sau:

không giới hạn ở một vùng tên và các lớp đơn lẻ, cũng có thể tổ chức các vùng tên ở dạng cây cho các đối tượng hoặc hàm, như được minh họa trong ví dụ sau:

Giờ đây, bạn có thể gọi chuỗi tin tức, lớp mồi và chức năng chủ đề bài đăng như sau:

ghi chú

một không gian tên có thể chứa một hoặc nhiều thực thể hoặc không gian tên, nhưng một thực thể không thể chứa bất kỳ không gian tên nào.

sử dụng từ khóa

từ khóa using có 2 cách sử dụng và được gọi bằng 2 tên khác nhau:

  • sử dụng khai báo
  • sử dụng chỉ thị

sử dụng khai báo

phương thức gọi

sử dụng

Khai báo này cho phép người lập trình truy cập vào thực thể đã khai báo thông qua không gian tên chứa khai báo.

ví dụ

và sau đó chức năng gửi chủ đề có thể được gọi như sau:

chỉ thị sử dụng

phương thức gọi

sử dụng

  • cho phép người viết mã gọi các thực thể trong khối không gian tên đã khai báo mà không cần gọi vùng tên.
  • có hiệu lực từ dòng mà nó được gọi.
  • có thể được gọi nhiều lần tại các vị trí khác nhau trong cùng một tệp nguồn và có hiệu lực song song với nhau.

ví dụ

Hãy xem xét ví dụ trong phần 2.1, rõ ràng là nhiều tên không gian tên phải được gọi khi tác giả gọi hàm gửi chủ đề. để rút gọn nó, nó có thể được viết như sau:

sử dụng chỉ thị là một cơ chế thông minh, nó sẽ không ảnh hưởng đến các dòng mã nguồn “không cần nó”, nó có thể được viết như thế này:

sử dụng không gian tên chuẩn;

std (std) là một gói các thực thể thường dùng được định nghĩa trước trong thư viện iostream của các phiên bản c ++ chuẩn để thuận tiện cho người lập trình khi sử dụng và tránh các lỗi khai báo trùng lặp. một số thực thể trong std: cout, cin, string, abs, sin, cos, tan, malloc…

Trả lời

Email của bạn sẽ không được hiển thị công khai.