فئة System::Collections::Generic::LinkedList

LinkedList class

LinkedList forward declaration.

template<typename T>class LinkedList : public virtual System::Object,
                                       public System::Collections::Generic::ICollection<T>,
                                       private System::Collections::Invalidatable
معاملالوصف
Tنوع القيمة المحتواة.

Nested classes

الطرق

طريقةالوصف
Add(const T&) overrideيضيف element إلى نهاية القائمة.
AddAfter(const SharedPtr<LinkedListNode<T>>&, const T&)يضيف element بعد node في القائمة.
AddAfter(const SharedPtr<LinkedListNode<T>>&, const SharedPtr<LinkedListNode<T>>&)يضيف newNode بعد node في القائمة.
AddBefore(const SharedPtr<LinkedListNode<T>>&, const T&)يضيف element قبل node في القائمة.
AddBefore(const SharedPtr<LinkedListNode<T>>&, const SharedPtr<LinkedListNode<T>>&)يضيف newNode قبل node في القائمة.
AddFirst(const T&)يضيف element إلى بداية القائمة.
AddFirst(const SharedPtr<LinkedListNode<T>>&)يضيف newNode إلى بداية القائمة.
AddLast(const T&)يضيف element إلى نهاية القائمة.
AddLast(const SharedPtr<LinkedListNode<T>>&)يضيف newNode إلى نهاية القائمة.
begin()يحصل على المؤشر إلى العنصر الأول في المجموعة.
begin() constيحصل على مكرر للعنصر الأول في المجموعة المؤهلة بـ const.
cbegin() constيحصل على مكرر للعنصر الأول المؤهل بـ const في المجموعة.
cend() constيحصل على مكرر لعنصر غير موجود مؤهل بـ const خلف نهاية المجموعة.
Clear() overrideيحذف جميع العناصر في القائمة.
Contains(const T&) const overrideيتحقق مما إذا كان element موجودًا في القائمة.
CopyTo(ArrayPtr<T>, int) overrideينسخ بيانات الحاوية إلى عناصر المصفوفة الموجودة.
crbegin() constيحصل على مكرر عكسي للعنصر الأخير المؤهل كـ const في المجموعة (الأول في الاتجاه العكسي).
crend() constيحصل على مكرر عكسي لعنصر غير موجود مؤهل كـ const قبل بداية المجموعة.
end()يحصل على مكرر لعنصر غير موجود خلف نهاية المجموعة.
end() constيحصل على مكرر لعنصر غير موجود خلف نهاية المجموعة المؤهلة بـ const.
Find(const T&) constينفّذ بحثًا في الاتجاه الأمامي عن element في القائمة.
FindLast(const T&) constينفّذ بحثًا في الاتجاه العكسي عن element في القائمة.
get_Count() const overrideيحصل على عدد العناصر في القائمة.
get_First() constيحصل على مؤشر إلى العنصر الأول في القائمة.
get_Last() constيحصل على مؤشر إلى العنصر الأخير في القائمة.
GetEnumerator() overrideيحصل على المكرّر للتنقل عبر LinkedList الحالي.
LinkedList()ينشئ LinkedList فارغًا.
LinkedList(const SharedPtr<IEnumerable<T>>&)منشئ النسخ.
rbegin()يحصل على مكرر عكسي للعنصر الأخير في المجموعة (الأول في الاتجاه العكسي).
rbegin() constيحصل على مكرر عكسي للعنصر الأخير في المجموعة المؤهلة كـ const (الأول في الاتجاه العكسي).
Remove(const T&) overrideيزيل أول ظهور للـ element المحدد من القائمة.
Remove(const SharedPtr<LinkedListNode<T>>&)يزيل العقدة من القائمة.
RemoveFirst()يزيل أول عقدة من القائمة.
RemoveLast()يزيل العقدة الأخيرة من القائمة.
rend()يحصل على مكرر عكسي لعنصر غير موجود قبل بداية المجموعة.
rend() constيحصل على مكرر عكسي لعنصر غير موجود قبل بداية المجموعة المؤهلة كـ const.
virtualizeBeginConstIterator() const overrideيحصل على تنفيذ begin const iterator للحاوية الحالية.
virtualizeBeginIterator() overrideيحصل على تنفيذ begin iterator للحاوية الحالية.
virtualizeEndConstIterator() const overrideيحصل على تنفيذ end const iterator للحاوية الحالية.
virtualizeEndIterator() overrideيحصل على تنفيذ end iterator للحاوية الحالية.

Typedefs

تعريف نوعالوصف
const_iteratorنوع المكرر الثابت.
const_reverse_iteratorنوع المكرر العكسي الثابت.
iteratorنوع المكرر.
list_tنوع البيانات الأساسي.
reverse_iteratorنوع المكرر العكسي.

ملاحظات

حاوية قائمة مرتبطة. تنفّذ غلافًا فوق std::list. يجب تخصيص كائنات هذه الفئة فقط باستخدام الدالة System::MakeObject(). لا تقم أبدًا بإنشاء نسخة من هذا النوع على المكدس أو باستخدام المشغل new، لأن ذلك سيؤدي إلى أخطاء وقت التشغيل أو أخطاء التأكيد. احرص دائمًا على تغليف هذه الفئة في مؤشر System::SmartPtr واستخدام هذا المؤشر لتمريره إلى الدوال كمعامل.

#include <system/collections/linkedlist.h>
#include <system/smart_ptr.h>

using namespace System;
using namespace System::Collections::Generic;

int main()
{
  // أنشئ نسخة من فئة LinkedList.
  auto list = MakeObject<LinkedList<int>>();

  // املأ القائمة المرتبطة.
  list->AddFirst(1);
  list->AddLast(30);
  list->AddAfter(list->get_First(), 15);
  list->AddBefore(list->get_Last(), 25);

  // اطبع عناصر القائمة المرتبطة.
  for (const auto item: list)
  {
    std::cout << item << ' ';
  }

  return 0;
}
/*
This code example produces the following output:
1 15 25 30
*/

انظر أيضًا