使用方法及示例" />
English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
عميل >هي واحدة من عمليات C ++ setوظيفة تعميم غير عضوية. هذه الوظيفة تستخدم لتحقق ما إذا كانت المجموعة الأولى أكبر من المجموعات الأخرى.
template<class T, class Compare, class Alloc> bool operator> ( const set<T,Compare,Alloc>& lhs, const set<T,Compare,Alloc>& rhs );
lhsالشكل الأول من المجموعة.
rhsالشكل الثاني من الكائن.
إذا كان الجانب الأيسر من كائن حاوي مجموعة أكبر من الجانب الأيمن من كائن حاوي مجموعة، فإنه يعود true، وإلا يعود false.
إذا كانت lhs و rhs مختلفة في الحجم، فإن التعقيد سيظل ثابتًا.
إلا أن أطول الطول هو lhs و rhs.
لا يوجد تغيير.
يمكن الوصول إلى محتويات lhs و rhs.
زيارة عناصر المجموعة غير المحولة دائمًا آمنة.
هذه الوظيفة لن تسبب استثناءً.
دعنا نرى مثالاً بسيطاً لتحقق ما إذا كان أول مجموعة أكبر من:
#include <iostream> #include <set> using namespace std; int main() { set<char> m1; set<char> m2; m1.emplace('a'); if (m1 > m2) cout << \ m1 = m2; if (!(m1 > m2)) cout << \ إرجاع 0; }
الإخراج:
مجموعة m1 أكبر من مجموعة m2. مجموعة m1 ليست أكبر من مجموعة m2.
في المثال السابق، هناك مجموعتين m1 و m2. تحتوي m1 على عنصر واحد، m2 فارغة. عند مقارنة المجموعتين، سيتم عرض رسالة "مجموعة m1 أكبر من مجموعة m2"، وبعد تخصيص m2 إلى m1، ستكون المجموعتين تحتويان على العناصر المتشابهة، ثم سيتم عرض رسالة "مجموعة m1 ليست أكبر من مجموعة m2".
دعنا نرى مثالاً بسيطاً:
#include <set> #include <iostream> using namespace std; int main( ) { set<int> m1, m2, m3; int i; for ( i = 0; i < 3; i++ ) { m1.insert( i ); m2.insert( i * i ); m3.insert( i - 1 ); } if ( m1 > m2 ) cout << \ else cout << "مجموعة m1 ليست أكبر من مجموعة m2." << endl; if ( m1 > m3 ) cout << "مجموعة m1 أكبر من مجموعة m3." << endl; else cout << "مجموعة m1 ليست أكبر من مجموعة m3." << endl; إرجاع 0; }
الإخراج:
مجموعة m1 ليست أكبر من مجموعة m2. مجموعة m1 أكبر من مجموعة m3.
دعنا نرى مثالاً بسيطاً:
#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; }
الإخراج:
0 1
في هذا المثال، إذا كان s1 أكبر من s2، فإنه سيعود 1، وإلا سيعود 0.
#include <set> #include <iostream> using namespace std; int main () { set<string> m2; typedef set<string> login; m2 = {"xyz@123"} ; //stored id and password string password; login m1; cout << "---------Login----------" << endl << endl; cout << "\nادخل كلمة المرور:\n"; cin >> password; // Get value m1.insert(password); // Put them in set cout << "\nكلمة المرور التي أدخلتها:\n"; for (auto it = m1.begin(); it != m1.end(); it++) { cout << (*it) << endl; } cout << "\nكلمة المرور المخزنة في النظام:\n"; for (auto it = m2.begin(); it != m2.end(); it++) { cout << (*it) << endl; } if (m2 > m1) cout << "\nكلمة المرور خاطئة..." << endl; else cout << "\nمرحبًا بك في صفحتك..." << endl; إرجاع 0; }
الإخراج:
1). --------- تسجيل الدخول ---------- ادخل كلمة المرور: xyz@123 كلمة المرور التي أدخلتها: xyz@123 كلمات المرور المخزنة في النظام : xyz@123 مرحبًا بك في صفحتك... 2). --------- تسجيل الدخول --------- ادخل كلمة المرور: abc@123 كلمة المرور التي أدخلتها: abc@123 كلمات المرور المخزنة في النظام: xyz@123 كلمة المرور خاطئة...
في المثال أعلاه، هناك مجموعتين m1 و m2. m1 تحتوي على كلمات المرور المخزنة، المجموعة الثانية m2 تحتوي على كلمات المرور المدخلة من المستخدم. يتم التحقق مما إذا كانت كلمة المرور m2 أكبر من m1. إذا كانت كلمة المرور m2 ليست أكبر من m1، فإن الدخول إلى النظام ينجح، وإلا فإن الدخول إلى النظام يفشل.