tôi thấy rằng câu hỏi này là khá cũ, nhưng đối với bất cứ ai kiểm tra này ra trong tương lai, tôi muốn thêm liên kết này từ tài liệu LLVM như bổ sung cho các cuộc thảo luận và cho poeple tìm kiếm để biết thêm:
LLVM Coding Standards: Do Not use using namespace std;
Tôi tin rằng tựa đề này là dấu hiệu rõ ràng lý do tại sao tôi đã chia sẻ nó để trợ giúp với câu hỏi này.
Trong LLVM, chúng tôi muốn tiền tố một cách rõ ràng tất cả số nhận dạng từ không gian tên chuẩn với tiền tố “std ::”, thay vì dựa vào “using namespace std;”.
Trong tệp tiêu đề, thêm chỉ thị 'sử dụng không gian tên XXX' gây ô nhiễm không gian tên của bất kỳ tệp nguồn nào #includes tiêu đề. Đây rõ ràng là một điều xấu.
Chỉnh sửa: Vì vậy, thay vào đó nếu sử dụng 'sử dụng không gian tên std;' rõ ràng gõ std :: cho mọi trường hợp bạn sử dụng thư viện chuẩn. Nó tránh xung đột với các không gian tên tệp nguồn. Đây là những gì báo giá ở trên từ bài viết tư vấn.
Nguồn
2016-08-19 08:24:53
Bạn đang đặt * chỉ * dòng đó? – GManNickG
Bạn có bao gồm bất kỳ tiêu đề nào có không gian tên đó không? – JoshD
Xcode 4 vẫn còn trong NDA; bạn nên đặt câu hỏi này trong diễn đàn beta dev của Apple, đó là diễn đàn duy nhất mà NDA bạn nhập vào với Apple cho phép bạn hỏi. (https://devforums.apple.com/community/xcode4 - đăng nhập chương trình dev táo của bạn là cần thiết để đọc/đăng) –