الفرق بين المراجعتين لصفحة: «Ruby/Struct/equality operator»

من موسوعة حسوب
< Ruby‏ | Struct
أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE: التابع <code>==‎</code> الخاص بالصنف <code>Struct</code> في روبي}}</noinclude> تصنيف: Ruby تصنيف:...'
 
ط مراجعة وتدقيق.
 
(مراجعة متوسطة واحدة بواسطة مستخدم واحد آخر غير معروضة)
سطر 1: سطر 1:
<noinclude>{{DISPLAYTITLE: التابع <code>==‎</code> الخاص بالصنف <code>Struct</code> في روبي}}</noinclude>
<noinclude>{{DISPLAYTITLE: المعامل <code>==‎</code> الخاص بالصنف <code>Struct</code> في روبي}}</noinclude>
[[تصنيف: Ruby]]
[[تصنيف: Ruby]]
[[تصنيف: Ruby Method]]
[[تصنيف: Ruby Operator]]
[[تصنيف: Ruby Struct]]
[[تصنيف: Ruby Struct]]
معامل التساوي - تُعاد القيمة <code>true</code> إن كان لل[[Ruby/Struct|بنية]] <code>other</code> (انظر فقرة البنية العامة) نفس الصنف الفرعي، وكان لها نفس قيم الأعضاء مقارنة بال[[Ruby/Struct|بنية]] التي استُدعي معها.
يتحقق المعامل <code>==</code> إن كان [[Ruby/Struct|لبنية]] ما نفس الصنف الفرعي ونفس قيم الأعضاء مقارنةً [[Ruby/Struct|ببنية]] أخرى.
==البنية العامة==
==البنية العامة==
<syntaxhighlight lang="ruby">struct == other  → true or false‎</syntaxhighlight>
<syntaxhighlight lang="ruby">struct == other  → true or false‎</syntaxhighlight>
==القيمة المُعادة==
==القيمة المعادة==
تُعاد القيمة <code>true</code> إن كان لل[[Ruby/Struct|بنية]] <code>other</code> نفس الصنف الفرعي، وكان لها نفس قيم الأعضاء مقارنة بال[[Ruby/Struct|بنية]] <code>struct</code>، وإلا فستُعاد القيمة <code>false</code>.
 
==أمثلة==
==أمثلة==
مثال على استخدام التابع <code>==‎</code>:
مثال على استخدام المعامل <code>==‎</code>:
<syntaxhighlight lang="ruby">Customer = Struct.new(:name, :address, :zip)
<syntaxhighlight lang="ruby">Customer = Struct.new(:name, :address, :zip)
joe  = Customer.new("Joe Smith", "123 Maple, Anytown NC", 12345)
joe  = Customer.new("Joe Smith", "123 Maple, Anytown NC", 12345)
سطر 15: سطر 17:
joe == joejr  #=> true
joe == joejr  #=> true
joe == jane    #=> false‎</syntaxhighlight>
joe == jane    #=> false‎</syntaxhighlight>
==انظر أيضا==
==انظر أيضًا==
* التابع <code>[[Ruby/Struct/new|new]]</code>: يُستخدم الشكلان الأولان (انظر فقرة البنية العامة) لإنشاء صنف فرعي جديد من <code>[[Ruby/Struct|Struct]]</code> يحمل الاسم <code>class_name</code>، والذي يمكن أن يحتوي قيمة لكل وسيط <code>member_name</code>.  يمكن استخدام هذا الصنف الفرعي لإنشاء نسخ من ال[[Ruby/Struct|بنية]] مثل أي صنف (<code>[[Ruby/Class|Class]]</code>) آخر.
* المعامل <code>[[Ruby/Struct/index_operator|[]]]</code>: يجلب قيمة عضو ال[[Ruby/Struct|بنية]] المعطى، أو قيمة العضو ذي الفهرس المحدَّد.
* التابع <code>[[Ruby/Struct/index_operator|[]]]</code>: معامل الفهرسة - يُعيد قيمة عضو ال[[Ruby/Struct|بنية]] المعطى <code>member</code> (انظر فقرة البنية العامة)، أو العضو ذو الفهرس <code>index</code>.  يطلق الاستثناء <code>[[Ruby/NameError|NameError]]</code> إن لم يكن <code>member</code> موجودًا، أو الاستثناء <code>[[Ruby/IndexError|IndexError]]</code> إن كان <code>index</code> خارج النطاق.
==مصادر==
==مصادر==
*[http://ruby-doc.org/core-2.5.1/Struct.html#method-i-3D-3D قسم التابع ==‎ في الصنف Struct‎ في توثيق روبي الرسمي.]
*[http://ruby-doc.org/core-2.5.1/Struct.html#method-i-3D-3D قسم المعامل ==‎ في الصنف Struct‎ في توثيق روبي الرسمي.]

المراجعة الحالية بتاريخ 06:28، 5 ديسمبر 2018

يتحقق المعامل == إن كان لبنية ما نفس الصنف الفرعي ونفس قيم الأعضاء مقارنةً ببنية أخرى.

البنية العامة

struct == other   true or false

القيمة المعادة

تُعاد القيمة true إن كان للبنية other نفس الصنف الفرعي، وكان لها نفس قيم الأعضاء مقارنة بالبنية struct، وإلا فستُعاد القيمة false.

أمثلة

مثال على استخدام المعامل ==‎:

Customer = Struct.new(:name, :address, :zip)
joe   = Customer.new("Joe Smith", "123 Maple, Anytown NC", 12345)
joejr = Customer.new("Joe Smith", "123 Maple, Anytown NC", 12345)
jane  = Customer.new("Jane Doe", "456 Elm, Anytown NC", 12345)
joe == joejr   #=> true
joe == jane    #=> false‎

انظر أيضًا

  • المعامل []: يجلب قيمة عضو البنية المعطى، أو قيمة العضو ذي الفهرس المحدَّد.

مصادر