English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
C ++ std 연산자 <=는 C ++set의비 멤버 오버로드 함수이 기능은 첫 번째 집합이 다른 집합보다 작거나 같은지 확인하는 데 사용됩니다.
template <class T, class Compare, class Alloc> bool operator<= ( const set<T, Compare, Alloc>& lhs, const set<T, Compare, Alloc>& rhs);
lhs:첫 번째 set 객체
rhs:두 번째 객체
set 객체의 왼쪽이나 set 객체의 오른쪽보다 작거나 같으면 true를 반환하고, 그렇지 않으면 false를 반환합니다.
lhs와 rhs의 크기가 다르면, 복잡도는 변하지 않습니다.
그렇지 않으면, 최대 길이는 lhs와 rhs입니다.
변화가 없습니다.
컨테이너 lhs와 rhs에 접근할 수 있습니다.
수정되지 않은 집합의 요소에 대한 동시 접근은 항상 안전합니다。
이 함수는 예외를 발생시키지 않습니다.
첫 번째 집합이 s보다 작거나 같은지 확인하는 간단한 예제를 보겠습니다:
#include <iostream> #include <set> using namespace std; int main() { set<char> m1; set<char> m2; m1.emplace('a'); m2.emplace('a'); if (m1 <= m2) cout << "집합 m1보다 작거나 같은2). << endl; m1.emplace('b'); if (!(m1 <= m2)) cout << "집합 m1m보다 작거나 같지 않은2). << endl; return 0; }
출력:
집합 m1보다 작거나 같은2. 집합 m1m보다 작거나 같지 않은2.
위의 예제에서 두 그룹의 m1와 m2m1와 m2에 포함된 요소가 1개입니다. 두 집합을 비교할 때, "집합 m1m보다 작거나 같습니다2"1에 추가된 추가 요소 후, "집합 m1m보다 작거나 같지 않은2"
다음은 간단한 예제입니다:
#include <set> #include <iostream> int main () { using namespace std; set<int> m1, m2, m3, m4; int i; for (i = 1; i <3; i ++) { m1.insert(i); m2.insert(i * i); m3.insert( i - 1); m4.insert(i); } if (m1 <= m2) cout << "집합 m1집합 m보다 작거나 같은2). << endl; else cout << "집합 m1집합 m보다 큰2). << endl; if (m1 <= m3) cout << "집합 m1집합 m보다 작거나 같은3). << endl; else cout << "집합 m1집합 m보다 큰3). << endl; if (m1 <= m4) cout << "집합 m1집합 m보다 작거나 같은4). << endl; else cout << "집합 m1집합 m보다 큰4). << endl; }
출력:
집합 m1집합 m보다 작거나 같은2. 집합 m1집합 m보다 큰3. 집합 m1집합 m보다 작거나 같은4.
다음은 간단한 예제입니다:
#include <iostream> #include <set> using namespace std; int main () { set<int> s1 , s2 ; s1 . insert ( 10 ); s1 . insert ( 20 ); s1 . insert ( 30 ); s2 = s1 ; cout << ( s1 <= s2 ) << endl; s1 . insert ( 40 ); cout << ( s1 <= s2 ) << endl; }
출력:
1 0
위의 예제에서, 집합 s1s보다 작거나 같은2그렇다면1아니면 0을 반환합니다。
#include <set> #include <iostream> using namespace std; int main () { set<string> m2; typedef set<string> login; m2.insert("xyz@123) ; //저장된 비밀번호 string password; login m1; cout << "---------Login----------" << endl << endl; cout << "비밀번호 입력: \n"; cin >> password; // Get value m1.insert(password); // Put them in set cout << "입력한 비밀번호: \n"; for (auto it = m1.begin(); it != m1.end(); it++) { cout << (*it << endl; } cout << "시스템에 저장된 비밀번호: \n"; for (auto it = m2.begin(); it != m2.end(); it++) { cout << (*it << endl; } if (m2 <= m1) cout << 접속해주셔서 감사합니다... << endl; else cout << "\n비밀번호 오류..." << endl; return 0; }
출력:
1). ---------Login---------- 비밀번호 입력: xyz@123 입력하신 비밀번호: xyz@123 시스템에 저장된 비밀번호 : xyz@123 안녕하세요, 페이지에 오신 것을 환영합니다... 2). ---------Login---------- 비밀번호 입력: abc@333 입력하신 비밀번호: abc@333 시스템에 저장된 비밀번호: xyz@123 비밀번호 오류...
위의 예제에서 두 그룹의 m1와 m2m1저장된 비밀번호를 포함하고, 두 번째 그룹 m2사용자가 입력한 비밀번호를 저장합니다. 그것은 m2m보다 작거나 같은지 여부1m2m보다 작거나 같습니다1성공적으로 로그인되었을 경우, 로그인 실패.