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

من موسوعة حسوب
أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE: التابع ‎<code> __id__</code>‎ في الصنف <code>BasicObject</code> في روبي}}</noinclude> تصنيف: Ruby تصن...'
 
لا ملخص تعديل
سطر 4: سطر 4:
[[تصنيف: Ruby ARGF]]
[[تصنيف: Ruby ARGF]]
يعيد التابع ‎<code>__id__</code>‎‎ (يدعى أيضًا <code>object_id</code>) مُعرِّفا عدديًا للكائن الذي استُدعي معه. سيُعاد نفس المعرِّف في كل مرة يُستدعى فيها التابع <code>object_id</code> مع الكائن نفسه، ولن يتشارك أي كائنين نشطين نفس المعرِّف.
يعيد التابع ‎<code>__id__</code>‎‎ (يدعى أيضًا <code>object_id</code>) مُعرِّفا عدديًا للكائن الذي استُدعي معه. سيُعاد نفس المعرِّف في كل مرة يُستدعى فيها التابع <code>object_id</code> مع الكائن نفسه، ولن يتشارك أي كائنين نشطين نفس المعرِّف.
ملاحظة: يعاد استخدام بعض كائنات الأصناف المٌضمّنة (<code>builtin</code> <code>classes</code>) وذلك لتحسين الأداء. هذا هو الحال بالنسبة للقيم المباشرة (<code>immediate</code> <code>values</code>) والسلاسل النصية الحرفية المجمدة (<code>frozen</code> <code>string</code> <code>literals</code>).
 
لا تُمرَّر القيم المباشرة بالمرجع (<code>reference</code>) ولكنَّها تُمرَّر بالقيمة، مثل <code>nil</code>، و <code>true</code>، و <code>false</code>، و <code>Fixnums</code>، و <code>Symbols</code>، و <code>Floats</code>.
'''ملاحظة''': يعاد استخدام بعض كائنات الأصناف المٌضمّنة (builtin classes) وذلك لتحسين الأداء. هذا هو الحال بالنسبة للقيم المباشرة (immediate values) والسلاسل النصية الحرفية المجمدة (frozen string literals).
 
لا تُمرَّر القيم المباشرة بالمرجع (reference) ولكنَّها تُمرَّر بالقيمة، مثل <code>nil</code>، و <code>true</code>، و <code>false</code>، و <code>Fixnums</code>، و <code>Symbols</code>، و <code>Floats</code>.
==البنية العامة==
==البنية العامة==
<syntaxhighlight lang="ruby"> __id__ → integer
<syntaxhighlight lang="ruby"> __id__ → integer
سطر 20: سطر 22:
  </syntaxhighlight>
  </syntaxhighlight>
==انظر أيضًا==
==انظر أيضًا==
* التابع ‎<code>__send__</code>‎‎‎: يستدعي تابعًا محددًا مع تمرير وسائط إليه.
* التابع ‎[[Ruby/BasicObject/send|<code>__send__</code>‎‎‎]]: يستدعي تابعًا محددًا مع تمرير وسائط إليه.
==مصادر==
==مصادر==
* قسم التابع__id__ في الصنف BasicObject في توثيق روبي الرسمي.
* [http://ruby-doc.org/core-2.5.1/BasicObject.html#method-i-__id__ قسم التابع__id__ في الصنف BasicObject في توثيق روبي الرسمي.]

مراجعة 18:42، 11 سبتمبر 2018

يعيد التابع ‎__id__‎‎ (يدعى أيضًا object_id) مُعرِّفا عدديًا للكائن الذي استُدعي معه. سيُعاد نفس المعرِّف في كل مرة يُستدعى فيها التابع object_id مع الكائن نفسه، ولن يتشارك أي كائنين نشطين نفس المعرِّف.

ملاحظة: يعاد استخدام بعض كائنات الأصناف المٌضمّنة (builtin classes) وذلك لتحسين الأداء. هذا هو الحال بالنسبة للقيم المباشرة (immediate values) والسلاسل النصية الحرفية المجمدة (frozen string literals).

لا تُمرَّر القيم المباشرة بالمرجع (reference) ولكنَّها تُمرَّر بالقيمة، مثل nil، و true، و false، و Fixnums، و Symbols، و Floats.

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

 __id__  integer
object_id  integer

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

يعاد عدد صحيح يمثل معرِّصف الكائن المعطى.

أمثلة

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

 Object.new.object_id  == Object.new.object_id  # => false
(21 * 2).object_id    == (21 * 2).object_id    # => true
"hello".object_id     == "hello".object_id     # => false
"hi".freeze.object_id == "hi".freeze.object_id # => true

انظر أيضًا

  • التابع ‎__send__‎‎‎: يستدعي تابعًا محددًا مع تمرير وسائط إليه.

مصادر