GIÁO TRÌNH C++ - Trang 119

Namespace std

Một trong những ví dụ tốt nhất mà chúng ta có thể tìm thấy về namespaces
chính là bản thân thư viện chuẩn của C++. Theo chuẩn ANSI C++, tất cả định
nghĩa của các lớp, đối tượng và hàm của thư viện chuẩn đều được định nghĩa
trong namespace

std

.

Bạn có thể thấy rằng chúng ta đã bỏ qua luật này trong suốt tutorial này. Tôi đã
quyết định làm vậy vì luật này cũng mới như chuẩn ANSI (1997) và nhiều trình
biên dịch cũ không tương thích với nó.
Hầu hết các trình biên dịch, thậm chí cả những cái tuân theo chuẩn ANSI, cho
phép sử dụng các file header truyền thống (như là

iostream.h

,

stdlib.h

),

những cái mà chúng ta trong suốt tutorial này. Tuy nhiên, chuẩn ANSI đã hoàn
toàn thiết kế lại những thư viện này để tận dụng lợi thế của tính năng templates
và để tuân theo luật phải khai báo tất cả các hàm và biến trong namespace

std

.

Chuẩn ANSI đã chỉ định những tên mới cho những file "header" này, cơ bản là
dùng cùng tên với các file của chuẩn C++ nhưng không có phần mở rộng

.h

. Ví

dụ,

iostream.h

trở thành

iostream

.

Nếu chúng ta sử dụng các file include của chuẩn ANSI-C++ chúng ta phải luôn
nhớ rằng tất cả các hàm, lớp và đối tượng sẽ được khai báo trong

std

. Ví dụ:

// ANSI-C++ compliant hello world

#include <iostream>

int main () {

std::cout << "Hello world in ANSI-C++\n";

return 0;

}

Hello world in ANSI-C++

Liên Kết Chia Sẽ

** Đây là liên kết chia sẻ bới cộng đồng người dùng, chúng tôi không chịu trách nhiệm gì về nội dung của các thông tin này. Nếu có liên kết nào không phù hợp xin hãy báo cho admin.