C++ 세트 찾다() 기능은 다음과 같은 데 사용됩니다. 요소를 찾아라 주어진 것과 값 발. 요소를 찾으면 해당 요소를 가리키는 반복자를 반환하고, 그렇지 않으면 집합의 끝을 가리키는 반복자, 즉 set::end()를 반환합니다.
통사론
iterator find (const value_type& val) const; // until C++ 11 const_iterator find (const value_type& val) const; //since C++ 11 iterator find (const value_type& val); //since C++ 11
매개변수
발 : 집합 컨테이너에서 검색할 값을 지정합니다.
반환 값
요소를 찾으면 해당 요소를 가리키는 반복자를 반환하고, 그렇지 않으면 집합의 끝을 가리키는 반복자, 즉 set::end()를 반환합니다.
복잡성
로그 크기입니다.
반복자 유효성
변경 사항 없음.
데이터 경쟁
컨테이너에 액세스됩니다(const 버전이나 non-const 버전 모두 컨테이너를 수정하지 않습니다.
매핑된 값에 액세스하지 않습니다. 요소에 동시에 액세스하고 수정하는 것이 안전합니다.
예외 안전
예외가 발생하면 컨테이너에는 변경 사항이 없습니다.
실시예 1
주어진 키 값을 가진 요소를 찾는 간단한 예를 살펴보겠습니다.
#include #include using namespace std; int main(void) { set m = {100,200,300,400}; auto it = m.find(300); cout << 'Iterator points to ' << *it << endl; return 0; }
산출:
Iterator points to 300
실시예 2
요소를 찾는 간단한 예를 살펴보겠습니다.
자바스크립트 온로드
#include #include using namespace std; int main(void) { set m = {'a', 'b', 'c', 'd'}; auto it = m.find('e'); if ( it == m.end() ) { // not found cout<<'element not found'; } else { found cout << 'iterator points to ' *it<< endl; return 0; < pre> <p> <strong>Output:</strong> </p> <pre> Element not found </pre> <p>In the above example, find() function finds the key value e in the set m, if it is not found in the set then it will return a not found message otherwise, it will display the set.</p> <h2>Example 3</h2> <p>Let's see a simple example:</p> <pre> #include #include using namespace std; int main() { char n; set example = {'a','b','c','d','e'}; cout<>n; auto search = example.find(n); if (search != example.end()) { cout << n<<' found and the value is ' << *search ' '; } else { cout n<<' not found '; < pre> <p> <strong>Output:</strong> </p> <pre> Enter the element which you want to search: b b found and the value is b </pre> <p>In the above example, find() function is used to find the element according to user's given value.</p> <h2>Example 4</h2> <p>Let's see a simple example:</p> <pre> #include #include int main () { std::set myset; std::set::iterator it; for (int i = 1; i <= 10; i++) myset.insert(i*10); it="myset.find(40);" myset.erase (it); (myset.find(60)); std::cout << 'myset contains:'; for (it="myset.begin();" it!="myset.end();" ++it) ' *it; ' '; return 0; } < pre> <p> <strong>Output:</strong> </p> <pre> myset contains: 10 20 30 50 70 80 90 100 </pre> <br></=></pre></'></pre></'element>
위의 예에서 find() 함수는 m 세트에서 키 값 e를 찾습니다. 세트에서 찾을 수 없으면 찾을 수 없음 메시지를 반환하고 그렇지 않으면 세트를 표시합니다.
실시예 3
간단한 예를 살펴보겠습니다.
#include #include using namespace std; int main() { char n; set example = {'a','b','c','d','e'}; cout<>n; auto search = example.find(n); if (search != example.end()) { cout << n<<\' found and the value is \' << *search \' \'; } else { cout n<<\' not found \'; < pre> <p> <strong>Output:</strong> </p> <pre> Enter the element which you want to search: b b found and the value is b </pre> <p>In the above example, find() function is used to find the element according to user's given value.</p> <h2>Example 4</h2> <p>Let's see a simple example:</p> <pre> #include #include int main () { std::set myset; std::set::iterator it; for (int i = 1; i <= 10; i++) myset.insert(i*10); it="myset.find(40);" myset.erase (it); (myset.find(60)); std::cout << \'myset contains:\'; for (it="myset.begin();" it!="myset.end();" ++it) \' *it; \' \'; return 0; } < pre> <p> <strong>Output:</strong> </p> <pre> myset contains: 10 20 30 50 70 80 90 100 </pre> <br></=></pre></\'>
위의 예에서는 find() 함수를 사용하여 사용자가 지정한 값에 따라 요소를 찾습니다.
실시예 4
간단한 예를 살펴보겠습니다.
#include #include int main () { std::set myset; std::set::iterator it; for (int i = 1; i <= 10; i++) myset.insert(i*10); it="myset.find(40);" myset.erase (it); (myset.find(60)); std::cout << \'myset contains:\'; for (it="myset.begin();" it!="myset.end();" ++it) \' *it; \' \'; return 0; } < pre> <p> <strong>Output:</strong> </p> <pre> myset contains: 10 20 30 50 70 80 90 100 </pre> <br></=>
=>\'>'element>