using namespace std;
지금까지 컴퓨터 과학 과정에서이 모든 것이 수행되었습니다. 뿐만 아니라 우리가 할 수있는 모든 것입니다. 그렇지 않으면 코드에 대한 불이익을 받게됩니다. 나는 온라인에 게시 된 코드를보고 :: std 또는 std ::를 사용하여 동일한 것을 달성 할 수 있음을 이해합니다.네임 스페이스 std 대 다른 대안 사용
내 질문에 왜 그렇습니까? 분명히 학습자와 단순성을 위해서 전역 선언을 사용하는 것이 더 간단하지만, 그려지는 것은 무엇인가? 실제 응용 프로그램에서 :: std를 기대하는 것이 더 현실적입니까? 그리고 이것에 덧붙여서, 사용 선언 뒤에있는 논리/개념은 무엇입니까? 이 모든 것은 내 과정에서 설명되지 않았으므로 나는 그것에 대해 더 잘 이해하고 싶습니다.
일반적인 질문으로 :이 콘텐츠, 벡터, 템플릿, 클래스 또는 오류 처리에 대해 배우지 않은 경우 C++의 필수 기능이 많이 누락 된 것처럼 보입니까?
미리 감사드립니다.
을 내가 [이 질문을 읽고 약간의 시간을 제안하고 것 다양한 게시 된 답변] (http://stackoverflow.com/questions/1452721/why-is-using-namespace-std-considered-bad-practice). 무의식적으로 번역 단위에 앉아있는 'namespace std 사용하기'가 예기치 않은 결과를 낳은 상황의 * 뛰어난 예 * [여기를 볼 수 있습니다] (http://stackoverflow.com/questions/2712076/how-to-use-an --iterator). 읽어야 할 가치가 있습니다. – WhozCraig
감사합니다. 나는 그것을 조사 할 것이다! 미리 몇 가지 예를 찾으려고했지만 많은 경우 "예 * 가끔 문제가 발생할 수 있습니다."와 같았습니다. 증거도없이. – user3857017
*** 네임 스페이스를 사용하는 *** 무분별한 *** 사용법은 많은 미묘한, 찾기 어려운 버그로 이어질 수있는 IMHO ** 나쁜 습관 **입니다. 그것은 네임 스페이스가 처음부터 시작하기 위해 도입 된 모든 이유를 우회합니다. 즉, 범위가 ** 제한된 ** (네임 스페이스 또는 로컬 범위에 따라) 인 경우 네임 스페이스 사용에 대한 적절한 사용이 있다고합니다.그럼에도 불구하고'std' 네임 스페이스는 매우 커서 ** 많은 ** 공통 기호를 포함하므로 항상 *** 네임 스페이스 표준을 사용하지 않습니다. ** 참고 자료 : ** [The C++ FAQ] (http://www.parashift.com/c++-faq/using-namespace-std.html) – Galik