C++의 새 버전에서도 똑같이 작동하는 표준 네임 스페이스 (namespace std
) 대신 사용할 수있는 (포함 된) C++ 헤더 파일이 있는지 궁금합니다. 네임 스페이스를 사용하지 않고 코드를 작성할 수 있고 문자열 데이터 형식을 사용할 수 있는지 알고 싶습니다.표준 네임 스페이스 대신 헤더 파일 사용
답변
string
은 std
네임 스페이스에 있으므로 완전히 무시할 수 없습니다.
옵션은 비록이 있습니다 : 당신이 헤더에 넣을 수
using std::string;
using namespace std;
typedef std::string myString;
//or fully qualify the name
std::string mystr;
가 포함되어 있습니다.
저기, 재앙에 대한 처방을 당신에게주었습니다. 사용하지 마십시오!
네임 스페이스가 좋습니다. 주위를 해킹하지 말고 사용법을 익히십시오.
'std :: string;을 사용하면 적어도 "* 특정 부분이 많이 필요합니다" lololo *, 코드를 가져와. " (여전히, * 헤더에 넣지 마십시오) –
"std :: string MyString"과 "typedef std :: string MyString"의 차이점은 무엇입니까? –
@MohammadSanei는 첫 번째 변수를 만들고 두 번째는 형식을 정의합니다. –
헤더와 네임 스페이스는 관련이 없으며 네임 스페이스는 좋은 것입니다. using namespace std
가 좋지 않습니다. using namespace std;
없이 항상 std::string
데이터 형식을 사용할 수 있습니다.
사용할 수있는 클래스는 typedef
이지만 실제로는 좋지 않습니다.
#include <string>
typedef std::string string;
'using std :: string;'은 문자열을 현재 네임 스페이스에 가져 오는 기본 방법입니다. –
예, 알고 있습니다. 그러나 그들은'using '을 사용하기를 원하지 않으며,'using'을 사용하여 헤더를 오염시키는 것은 좋지 않습니다. 하지만, 나는 대신에 다른 typename으로 오염시키고 있습니다. –
완벽 해요! 방금 네가 한 말있어! 'using '을 사용하여 헤더 파일을 오염시키지 않고 비슷한 방법으로 cout과 endl을 정의 할 수있는 방법이 있습니까? –
"using namespace std;"를 사용하려면 가난한 생각입니다. (타이핑을 쉽게하기 위해 필자가 여기에 게시 한 샘플에서 오히려 정기적으로이 작업을 수행해야한다는 것을 인정해야합니다.) 헤더 파일에서 같은 것을 숨기려면 더 나쁜 생각입니다.
이유가 있기 때문에 네임 스페이스가 있습니다.
하지만 네임 스페이스 표준 이전에 작성된 기존 코드를 100000 줄 가지고 있다면 새 컴파일러에서 사용할 포트를 빠르게 바꾼 다음 "using namespace std;"를 추가하십시오. 각 파일의 맨 위에있는 것이 바람직한 해결책이 될 것입니다.
- 1. 클래스 대신 네임 스페이스 사용
- 2. C++ 헤더 파일의 네임 스페이스
- 3. (익명) 네임 스페이스, 함수 및 헤더 파일
- 4. 템플릿 구현 파일 내의 네임 스페이스 사용
- 5. 싱글 톤 대신 네임 스페이스 사용
- 6. laravel보기에서 네임 스페이스 사용
- 7. 헤더의 네임 스페이스 가시성 사용
- 8. PHP - 네임 스페이스 사용 시작
- 9. 데이터 저장소에 네임 스페이스 사용 또는 Memcache에 네임 스페이스 사용
- 10. 네임 스페이스 문제 사용
- 11. 라이브러리의 네임 스페이스 사용
- 12. XML에서 네임 스페이스 사용
- 13. System.ComponentModel 네임 스페이스 사용
- 14. C에서의 네임 스페이스 사용
- 15. @param의 네임 스페이스 사용
- 16. 사용 "네임 스페이스 foo는 {"대신 명시 적으로 기능이 같은 선언
- 17. 요소 속성 네임 스페이스 대신 XSLT 루트 태그 네임 스페이스
- 18. 헤더 문제의 C/C++ 네임 스페이스
- 19. 비정상적인 모듈 네임 스페이스 사용
- 20. 다른 프로젝트의 네임 스페이스 사용
- 21. Firefox에서 XPath 네임 스페이스 사용
- 22. PHP 네임 스페이스 및 "사용"
- 23. no std 네임 스페이스
- 24. 네임 스페이스와 헤더 사용
- 25. 네임 스페이스 내에 헤더 파일을 포함해야합니까?
- 26. 네임 스페이스 ++
- 27. C++ 네임 스페이스 및 구문 헤더 파일 오류
- 28. anon 사용. 네임 스페이스 함수. 네임 스페이스 범위
- 29. 과부하 표준 네임 스페이스 템플릿 (전문되지 않음)
- 30. 종속 이름 확인 및 네임 스페이스 표준/표준 라이브러리
왜 네임 스페이스를 추가하지 않으시겠습니까? –
'using namespace std'와 no는 사용하지 마십시오. 왜냐하면 끔찍한 생각이기 때문입니다. –
네임 스페이스 한정자가없는 오래된 코드가 있기 때문에 추측하고 있습니다. –