Logo ar.boatexistence.com

لماذا يتم استخدام gethashcode في c ؟

جدول المحتويات:

لماذا يتم استخدام gethashcode في c ؟
لماذا يتم استخدام gethashcode في c ؟

فيديو: لماذا يتم استخدام gethashcode في c ؟

فيديو: لماذا يتم استخدام gethashcode في c ؟
فيديو: String's Hash Code is Changing Between Runs - Here is Why #shorts 2024, يمكن
Anonim

يوجد

GetHashCode غالبًا لغرض واحد: ليكون بمثابة دالة تجزئة عند استخدام الكائن كمفتاح في جدول التجزئة. … جدول التجزئة هو بنية بيانات تربط قيمة بمفتاح.

ما هو الغرض من GetHashCode؟

توفر طريقة GetHashCode رمز التجزئة للخوارزميات التي تحتاج إلى فحوصات سريعة لتساوي الكائنللحصول على معلومات حول كيفية استخدام أكواد التجزئة في جداول التجزئة وللبعض خوارزميات كود التجزئة الإضافية ، انظر إدخال وظيفة التجزئة في ويكيبيديا. كائنان يعيدان رموز تجزئة متساوية.

هل أحتاج إلى تطبيق GetHashCode؟

من المهم تنفيذ كل من equals و gethashcode، بسبب الاصطدامات ، خاصة أثناء استخدام القواميس. إذا قام عنصران بإرجاع رمز التجزئة نفسه ، فسيتم إدراجهما في القاموس بالتسلسل. أثناء الوصول إلى طريقة البند يساوي.

متى يجب تجاوز GetHashCode؟

إذا كنت تنفذ نوعًا مرجعيًا ، فيجب أن تفكر في تجاوز طريقة Equals إذا كان النوع يبدو كنوع أساسي ، مثل Point و String و BigNumber وما إلى ذلك. تجاوز طريقة GetHashCode للسماح نوع للعمل بشكل صحيح في جدول التجزئةاقرأ المزيد من الإرشادات حول عوامل المساواة.

ما هو الهاش في الكود؟

التجزئة هي مجرد تمرير بعض البيانات من خلال صيغة تنتج نتيجة، تسمى التجزئة. عادةً ما تكون هذه التجزئة عبارة عن سلسلة من الأحرف وتكون التجزئات التي يتم إنشاؤها بواسطة الصيغة دائمًا بنفس الطول ، بغض النظر عن مقدار البيانات التي تغذيها بها. على سبيل المثال ، تنتج صيغة MD5 دائمًا 32 حرفًا تجزئة طويلة.

موصى به: