«stl» 태그된 질문

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

10
지도에 키 값이 포함되어 있는지 확인 하시겠습니까?
STL 맵에 주어진 키의 값이 포함되어 있는지 확인하는 가장 좋은 방법은 무엇입니까? #include <map> using namespace std; struct Bar { int i; }; int main() { map<int, Bar> m; Bar b = {0}; Bar b1 = {1}; m[0] = b; m[1] = b1; //Bar b2 = m[2]; map<int, Bar>::iterator iter …
256 c++  stl  map 

13
사용자 객체의 벡터 정렬
사용자 정의 (즉, 사용자 정의) 객체를 포함하는 벡터를 정렬하는 방법은 무엇입니까? 아마도 표준 STL 알고리즘 정렬 은 사용자 정의 객체의 필드 중 하나에서 정렬 키로 작동하는 술어 (함수 또는 함수 객체)와 함께 정렬되어야합니다. 내가 올바른 길을 가고 있습니까?
249 c++  stl  sorting 

8
std :: unique_ptr <T>가 T의 전체 정의를 알아야합니까?
헤더에 다음과 같은 코드가 있습니다. #include &lt;memory&gt; class Thing; class MyClass { std::unique_ptr&lt; Thing &gt; my_thing; }; Thing유형 정의가 포함되지 않은 cpp에이 헤더를 포함 시키면 VS2010-SP1에서 컴파일되지 않습니다. 1&gt; C : \ Program Files (x86) \ Microsoft Visual Studio 10.0 \ VC \ include \ memory (2067) : 오류 C2027 …

17
std :: map에서 모든 키 (또는 값)를 검색하여 벡터에 넣는 방법은 무엇입니까?
이것은 내가 나오는 가능한 방법 중 하나입니다. struct RetrieveKey { template &lt;typename T&gt; typename T::first_type operator()(T keyValuePair) const { return keyValuePair.first; } }; map&lt;int, int&gt; m; vector&lt;int&gt; keys; // Retrieve all keys transform(m.begin(), m.end(), back_inserter(keys), RetrieveKey()); // Dump all keys copy(keys.begin(), keys.end(), ostream_iterator&lt;int&gt;(cout, "\n")); 물론 다른 functor RetrieveValues 를 정의하여 …
246 c++  dictionary  stl  stdmap 



16
STL의 벡터 대 목록
효과적인 STL에서 벡터는 기본적으로 사용해야하는 시퀀스 유형입니다. 무슨 뜻입니까? 효율성을 무시하면 vector아무것도 할 수 없는 것 같습니다 . 아무도 vector실현 가능한 옵션이 아니지만 list사용해야 하는 시나리오를 제공 할 수 있습니까?
238 c++  list  vector  stl 

17
C ++에서 std :: string에서 공백 제거
C ++에서 문자열에서 공백을 제거하는 선호되는 방법은 무엇입니까? 모든 문자를 반복하고 새 문자열을 만들 수 있지만 더 좋은 방법이 있습니까?
222 c++  stl 

2
unique_ptr을 벡터로 푸시 백 할 수없는 이유는 무엇입니까?
이 프로그램에 어떤 문제가 있습니까? #include &lt;memory&gt; #include &lt;vector&gt; int main() { std::vector&lt;std::unique_ptr&lt;int&gt;&gt; vec; int x(1); std::unique_ptr&lt;int&gt; ptr2x(&amp;x); vec.push_back(ptr2x); //This tiny command has a vicious error. return 0; } 오류: In file included from c:\mingw\bin\../lib/gcc/mingw32/4.5.0/include/c++/mingw32/bits/c++allocator.h:34:0, from c:\mingw\bin\../lib/gcc/mingw32/4.5.0/include/c++/bits/allocator.h:48, from c:\mingw\bin\../lib/gcc/mingw32/4.5.0/include/c++/memory:64, from main.cpp:6: c:\mingw\bin\../lib/gcc/mingw32/4.5.0/include/c++/bits/unique_ptr.h: In member function 'void __gnu_cxx::new_allocator&lt;_Tp&gt;::construct(_Tp*, const _Tp&amp;) [with …


15
C ++ 정렬 및 인덱스 추적
C ++과 표준 라이브러리를 사용하여 샘플 시퀀스를 오름차순으로 정렬하고 싶지만 새로 샘플의 원래 인덱스를 기억하고 싶습니다. 예를 들어, 집합, 벡터 또는 샘플 행렬이 A : [5, 2, 1, 4, 3]있습니다. 나는 것으로이를 정렬 할 B : [1,2,3,4,5], 그러나 나는 또한 내가 될 또 다른 세트를 얻을 수 있도록, 값의 원래의 …
216 c++  sorting  stl  indexing 

22
std :: vector가 일반 배열보다 훨씬 느립니까?
저는 항상 std::vector"배열로 구현되는" 일반적인 지혜라고 생각했습니다 . 오늘 나는 그것을 내려 가서 테스트했지만 그렇지 않은 것 같습니다. 테스트 결과는 다음과 같습니다. UseArray completed in 2.619 seconds UseVector completed in 9.284 seconds UseVectorPushBack completed in 14.669 seconds The whole thing completed in 26.591 seconds 약 3-4 배 느립니다! " vector몇 …
212 c++  arrays  performance  stl  vector 

13
C ++ STL이 왜 템플릿에 크게 의존하고 있습니까? (* 인터페이스 *가 아님)
의무적 인 이름 (표준 템플릿 라이브러리)을 제외하고는 ... C ++은 처음에 OOP 개념을 C에 제시하려고했습니다. 즉, 클래스 및 클래스 계층 구조를 기반으로 특정 엔터티가 수행 할 수있는 작업과 수행 할 수없는 작업을 알 수 있습니다. 다중 상속의 문제와 C ++이 인터페이스 개념을 다소 어색한 방식으로 (자바와 비교하여) 지원한다는 사실로 인해 …
211 c++  oop  templates  stl 



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