«stl» 태그된 질문

STL (Standard Template Library)은 일반 컨테이너, 반복자, 알고리즘 및 함수 객체로 구성된 C ++ 라이브러리입니다. C ++가 표준화되었을 때, STL의 많은 부분이 표준 라이브러리에 채택되었고, 표준 라이브러리의 이러한 부분은 때때로 총칭하여 "STL"로 잘못 언급되기도합니다.

7
push_back 및 emplace_back
나는 조금의 차이에 대한 혼란 스러워요 push_back와 emplace_back. void emplace_back(Type&& _Val); void push_back(const Type& _Val); void push_back(Type&& _Val); 가로 push_back과부하 내가 아주의 목적은 무엇 보지 않는를 rvalue 참조 복용 emplace_back되고 있습니까?


29
하드 코딩 된 요소로 std :: vector를 초기화하는 가장 쉬운 방법은 무엇입니까?
배열을 만들고 다음과 같이 초기화 할 수 있습니다. int a[] = {10, 20, 30}; 어떻게 std::vector우아하게 만들고 우아하게 초기화합니까? 내가 아는 가장 좋은 방법은 다음과 같습니다. std::vector<int> ints; ints.push_back(10); ints.push_back(20); ints.push_back(30); 더 좋은 방법이 있습니까?


17
std :: vector에 대한 반복 : 부호없는 vs 부호있는 인덱스 변수
C ++에서 벡터를 반복하는 올바른 방법은 무엇입니까? 이 두 코드 조각을 고려하십시오.이 코드는 잘 작동합니다. for (unsigned i=0; i < polygon.size(); i++) { sum += polygon[i]; } 그리고 이것: for (int i=0; i < polygon.size(); i++) { sum += polygon[i]; } 생성 warning: comparison between signed and unsigned integer expressions합니다. …
470 c++  stl  unsigned  signed 

14
주어진 키가 C ++ std :: map에 있는지 확인하는 방법
주어진 키가 맵에 있는지 확인하고 다소 할 수 없습니다. typedef map<string,string>::iterator mi; map<string, string> m; m.insert(make_pair("f","++--")); pair<mi,mi> p = m.equal_range("f");//I'm not sure if equal_range does what I want cout << p.first;//I'm getting error here p에있는 내용을 어떻게 인쇄 할 수 있습니까?
451 c++  dictionary  stl 


5
"STL"과 "C ++ 표준 라이브러리"의 차이점은 무엇입니까?
누군가가 SGI STL에서 가져온 부분 대신 전체 C ++ 표준 라이브러리를 언급하는 데 STL 용어가 잘못 사용 되었다고 주장 하면서이 기사 를 주목했습니다 . (...) STL (SGI에서 설계된)을 사용하는 사람이 거의 없다는 사실에도 불구하고 "STL"을 나타냅니다. C ++ 표준 라이브러리의 일부는 STL의 일부를 기반으로했으며 많은 사람들 (여러 작성자 및 악명 …


9
왜 참조 벡터를 만들 수 없습니까?
내가 이것을 할 때 : std::vector<int> hello; 모든 것이 잘 작동합니다. 그러나 대신 참조 벡터로 만들면 : std::vector<int &> hello; 나는 끔찍한 오류를 얻는다 오류 C2528 : '포인터': 참조 포인터가 잘못되었습니다 구조체에 대한 많은 참조를 벡터에 넣고 싶습니다. 그래서 포인터로 방해 할 필요가 없습니다. 왜 벡터가 이것에 대해 울화를 일으키는가? …


11
내림차순으로 벡터 정렬
사용해야합니까 std::sort(numbers.begin(), numbers.end(), std::greater<int>()); 또는 std::sort(numbers.rbegin(), numbers.rend()); // note: reverse iterators 내림차순으로 벡터를 정렬하려면? 하나의 접근 방식이나 다른 접근 방식의 이점이나 단점이 있습니까?
310 c++  sorting  stl  vector  iterator 

14
벡터에서 서브 벡터를 추출하는 가장 좋은 방법은?
내가 size std::vector()라고 가정 해보십시오 . 0 <= X <= Y <= N-1 인 요소 X부터 Y까지의 복사본으로 구성된 새 벡터를 구성하는 가장 간단한 방법은 무엇입니까? 예를 들어 size의 벡터를 통해 통과 합니다 .myVecNmyVec [100000]myVec [100999]150000 벡터로 효율적으로 수행 할 수없는 경우 대신 사용해야하는 다른 STL 데이터 유형이 있습니까?
295 c++  stl  vector  range 

23
복제본을 지우고 벡터를 정렬하는 가장 효율적인 방법은 무엇입니까?
잠재적으로 많은 요소가있는 C ++ 벡터를 가져 와서 중복을 지우고 정렬해야합니다. 현재 아래 코드가 있지만 작동하지 않습니다. vec.erase( std::unique(vec.begin(), vec.end()), vec.end()); std::sort(vec.begin(), vec.end()); 이 작업을 올바르게 수행하려면 어떻게해야합니까? 또한 중복을 먼저 지우거나 (위의 코드와 유사) 정렬을 먼저 수행하는 것이 더 빠릅니까? 정렬을 먼저 수행하면 std::unique실행 된 후에도 정렬 상태 가 …
274 c++  sorting  vector  stl  duplicates 

4
std :: string length () 및 size () 멤버 함수
나는 이것에 대한 답변 읽고 있던 질문을 실제로라는 방법이 발견 length()을 위해 std::string(내가 항상 사용 size()). 이 방법을 std::string수업에 사용 하는 특별한 이유가 있습니까? 내가 MSDN 및 CppRefernce 모두를 읽고, 그들 사이에는 차이가 없음을 시사 size()하고 length(). 그렇다면 클래스 사용자에게 더 혼란스럽지 않습니까?
264 c++  string  stl  size 

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.