- Tubelator AI
- >
- Videos
- >
- Education
- >
- Ternary Operators in C++ (Conditional Assignment) - Understanding and Implementation Guide
Ternary Operators in C++ (Conditional Assignment) - Understanding and Implementation Guide
Learn about ternary operators in C++, a powerful tool for conditional assignment. Understand how to use the question mark and colon symbol effectively in your code to assign values to variables based on specific conditions. Dive into practical examples and enhance your C++ programming skills.
Video Summary & Chapters
No chapters for this video generated yet.
Video Transcript
يا أيها الرجال؟ اسمي Echerno وأرجوكم العودة إلى سلسلة C++ الخاصة بي.
اليوم سوف نتحدث عن المشغلين الثانوية في C++.
الآن المشغل الثنائي لدينا هو حقا مجرد اسم لعلامة السؤال
و العمود الذي قد ترى في بعض الأحيان في رمز المصدر.
بالنسبة للأشخاص الذين لم يسبق لهم رؤيته من قبل وأنهم نوع جديد في البرمجة ،
يمكن أن يكون نوعًا من الخروج منك.
ربما تكون مثل، ما هو على الأرض هذه علامة السؤال في منتصف رمزي؟
لكنها في الواقع بسيطة حقا.
وكل ما هو حقا، هو مجرد السكر الاصطناعي إذا البيانات.
بدلاً من التعامل مع بيان إذا أو غيره ،
يمكننا أن نكتب فقط علامة سؤال وعمود عندما نحاول تعيين قيمة إلى
متغير استنادا إلى حالة معينة. دعونا نلقي نظرة على ذلك. لذلك أعلاه هنا لقد وضعت
اثنين من المتغيرات. انها كلا الكليين, sLevel و sSpeed فقط لمساعدتنا. افترض أنني أردت
لتعيين سرعة استنادًا إلى المستوى الذي كاننا عليه حاليًا.
لذلك دعونا نكتب بيانًا جديدًا الآن. سنقول إذا كان المستوى أعلى من 5 ،
سنقوم بتعيين السرعة ليكون شيئًا ما ، لا أعرف ، 10. وإلا سنقوم بتعيين السرعة ليكون 5.
حسنا، بارد. لذلك كل هذا بسيط جدا.
أعني، لقد أخذنا.
حتى مثل أربعة خطوط من الكود ولكنها ليست سيئة جدا ولها الكثير من المعنى.
هو المكان الذي يمكن للمشغل الثنائي أن تأتي ونوع لجعل رمزنا تبدو قليلا
يرجى ملاحظة أن ما نقوم به هنا هو أننا نقوم بالتحقق من حالة ثم نحن
تخصيص sSpeed مع واحدة من قيمين. إما 10 إذا كان هذا الشرط صحيحًا أو 5 إذا كان هذا
الحالة غير صحيحة. لذلك منذ أننا ببساطة في الأساس القيام بعمل مشروط ما يمكننا
القيام بدلاً من ذلك هو ببساطة كتابة سرعة تساوي الحالة التي هي مستوى s أكبر
أكثر من 5 أسئلة تحدد القيمة التي ينبغي أن نعيشها إذا كانت هذه الشروط صحيحة لذلك إذا كان هذا صحيحًا
ما هي القيمة التي نقوم بتعيين 10 على حق حتى نكتب 10 ثم عمود ثم القيمة
أننا نريد أن نعيش إذا كانت الحالة خاطئة لذلك أساسا ما هو داخل هذا الآخر
بيان إذا كانت هذه الحالة غير صحيحة ما نسمح لسرعة s 5 لذلك نكتب
أن هناك ونحن جاهزون. هذا هو. هذين البيانين متطابقين. الآن سواء كان ذلك أم لا.
نوع المشغل الثنائي يزيل رمز المصدر لدينا...
يجعل من الأسهل القراءة ، وهذا موضوعي قليلا. شخصيا أعتقد أنه يفعل ذلك
تنظيفها ويجعلها أسهل القراءة.أنا أعني ما فعلنا فعلا هو تقليل أربعة
خطوط الكود إلى واحد، ولكن النتيجة النهائية هي ما يهم حقا هنا. وهذا ما يمكن أن أرى
بوضوح ، أليس كذلك؟ يمكنني أن أرى أن ما نقوم به فعلا هو أننا نمنح sspeed.
هدف هذا البيان الصغير if-else. هذا كل ما نحاول القيام به. نحن نحاول تعيين sspeed.
الآن القيمة التي نعيشها لـ sspeed سوف تعتمد على شرط بدلا من مجرد أن يكون
مثل المسطح خارج 10 أو شيء من هذا القبيل. لذلك نعم، فإنه أكثر قليلا من الكود لقراءة، ولكن أنا
أعتقد أنه معنى مثالي وعادة ما أحاول ويفضل كتابة رمز مثل هذا في كل مرة
مثال آخر حيث قد يكون مفيدًا هو أن نقول ببساطة أننا نحاول
لتحديد تصنيف لاعب، وهو سلسلة، أليس كذلك؟ لذلك ربما إذا كانوا قد سبق المستوى 10 أو
شيء مثل هذا ، يمكننا تعيين تصنيف الماجستير. وإلا نريد أن نفعل شيئًا ما
مثل تعيين تصنيف المبتدئين، أليس كذلك؟ انظر إلى مدى سهولة كان القيام به مع هذا الترمذي
إذا لم يكن لدي هذا المشغل الثنائي أو لم أكن...
أريد استخدامها لسبب ما. ما يمكنني القيام به هو إنشاء سلسلة، ثم تحقق من معرفة ما إذا كان sLevel
هو أكبر من 10.إذا كان ذلك، سأكون تعيين الماجستير. وإلا، سأكون تعيين المبتدئين.
حسنا، مرة أخرى، يمكنك رؤية الطريقة أقل رمز. وليس فقط ذلك، ولكن لدينا في الواقع هذا المتغير
إلى هنا ، والتي في هذه الحالة ، بسبب الطريقة التي يتم إعلانها ، ستبني في الواقع
كائن سلسلة فارغة، ثم كتابة هذا الكائن سلسلة مع واحد جديد.
في الواقع تختلف قليلا عن هذا الرمز وفي الواقع أبطأ من الناحية الفنية
لأنك تقوم ببناء سلسلة مؤقتة ثم تدميرها على الفور.