-
[C++] std 뜻프로그래밍/C & C++ 2024. 6. 30. 23:53728x90반응형
std
는 "standard"의 약자로, C++ 표준 라이브러리(Standard Library
)를 의미합니다.std
네임스페이스는 C++ 표준 라이브러리의 모든 구성 요소를 포함하는 네임스페이스입니다. 이를 통해 표준 라이브러리의 함수, 클래스, 객체 등을 다른 사용자 정의 코드와 구분하여 사용할 수 있습니다.주요 예시
1.
std::vector
동적 배열을 구현하는 표준 라이브러리 컨테이너입니다.
#include <iostream> #include <vector> int main() { std::vector<int> v = {1, 2, 3, 4, 5}; for (int i : v) { std::cout << i << " "; } std::cout << std::endl; return 0; }
2.
std::string
문자열을 다루기 위한 클래스입니다.
#include <iostream> #include <string> int main() { std::string s = "Hello, World!"; std::cout << s << std::endl; return 0; }
3.
std::cout
andstd::cin
표준 입출력 스트림 객체입니다.
#include <iostream> int main() { int number; std::cout << "Enter a number: "; std::cin >> number; std::cout << "You entered: " << number << std::endl; return 0; }
4.
std::unique_ptr
스마트 포인터의 한 종류로, 유일한 소유권을 가지는 포인터입니다.
#include <iostream> #include <memory> class Resource { public: Resource() { std::cout << "Resource acquired\n"; } ~Resource() { std::cout << "Resource released\n"; } }; int main() { std::unique_ptr<Resource> res = std::make_unique<Resource>(); return 0; }
네임스페이스와
std::
C++ 표준 라이브러리는 방대한 양의 클래스와 함수들을 포함하고 있기 때문에,
std
네임스페이스를 사용하여 이러한 구성 요소들을 깔끔하게 조직하고 다른 코드와의 이름 충돌을 방지할 수 있습니다. 예를 들어,std::vector
와 같이std::
를 접두사로 사용하여 표준 라이브러리의vector
클래스를 명시적으로 사용하는 것입니다.또한, 네임스페이스를 사용하지 않고 특정 범위에서 표준 라이브러리를 사용하고자 할 때는 다음과 같이
using
키워드를 사용할 수 있습니다:#include <iostream> #include <vector> using namespace std; int main() { vector<int> v = {1, 2, 3, 4, 5}; for (int i : v) { cout << i << " "; } cout << endl; return 0; }
위와 같이
using namespace std;
를 사용하면, 코드에서std::
접두사를 생략할 수 있습니다. 그러나 큰 프로젝트에서는 이름 충돌을 피하기 위해 네임스페이스를 명시적으로 사용하는 것이 권장됩니다.728x90반응형'프로그래밍 > C & C++' 카테고리의 다른 글
[C++] 깊은 복사와 얕은 복사 (0) 2024.07.05 [C++] 참조자를 통해 객체의 멤버에 접근 (0) 2024.07.02 [C++] 포인터를 통해 객체의 멤버에 접근 (0) 2024.07.01 [C++] 스마트 포인터 (0) 2024.07.01 [C++] 포인터와 참조자 (0) 2024.06.30