فئة System::Collections::Generic::List

List class

List forward declaration.

template<typename T>class List : public virtual System::Object,
                                 public System::Collections::Generic::IList<T>
معاملالوصف
Tنوع العنصر.

Nested classes

الطرق

طريقةالوصف
_add_range(std::initializer_list<T>)خاص بـ C++.
Add(const T&) overrideيضيف العنصر إلى نهاية القائمة.
AddInitializer(int, const T *)يضيف عناصر إلى القائمة؛ يُستخدم عند ترجمة المُهيئات.
AddRange(IEnumerablePtr)يضيف جميع العناصر من المجموعة (أو نفسها) إلى نهاية القائمة الحالية.
AsReadOnly()يحصل على مرجع للقراءة فقط لهذه المجموعة.
begin()يحصل على المؤشر إلى العنصر الأول في المجموعة.
begin() constيحصل على مكرر للعنصر الأول في المجموعة المؤهلة بـ const.
BinarySearch(const T&) constيبحث عن عنصر في قائمة مرتبة.
BinarySearch(const T&, const SharedPtr<System::Collections::Generic::IComparer<T>>&) constيبحث عن عنصر في قائمة مرتبة.
BinarySearch(int, int, const T&, const SharedPtr<System::Collections::Generic::IComparer<T>>&) constيبحث عن عنصر في قائمة مرتبة.
cbegin() constيحصل على مكرر للعنصر الأول المؤهل بـ const في المجموعة.
cend() constيحصل على مكرر لعنصر غير موجود مؤهل بـ const خلف نهاية المجموعة.
Clear() overrideيحذف جميع العناصر.
Contains(const T&) const overrideيتحقق مما إذا كان العنصر موجودًا في القائمة.
ConvertAll(Converter<T, OutputType>)ينشئ قائمة من العناصر المحوّلة إلى نوع مختلف.
CopyTo(System::ArrayPtr<T>, int) overrideينسخ عناصر القائمة إلى عناصر مصفوفة موجودة.
CopyTo(const System::ArrayPtr<T>&)ينسخ جميع العناصر إلى عناصر مصفوفة موجودة.
CopyTo(int, const System::ArrayPtr<T>&, int, int)ينسخ العناصر بدءًا من الفهرس المحدد إلى عناصر مصفوفة موجودة.
crbegin() constيحصل على مكرر عكسي للعنصر الأخير المؤهل كـ const في المجموعة (الأول في الاتجاه العكسي).
crend() constيحصل على مكرر عكسي لعنصر غير موجود مؤهل كـ const قبل بداية المجموعة.
data()دالة وصول إلى بنية البيانات الأساسية.
data() constدالة وصول إلى بنية البيانات الأساسية.
end()يحصل على مكرر لعنصر غير موجود خلف نهاية المجموعة.
end() constيحصل على مكرر لعنصر غير موجود خلف نهاية المجموعة المؤهلة بـ const.
Exists(System::Predicate<T>)يتحقق مما إذا كان عنصر يطابق شرطًا محددًا موجودًا في القائمة.
Find(System::Predicate<T>)يبحث عن عنصر يطابق شرطًا محددًا.
FindAll(System::Predicate<T>)يبحث عن عناصر تطابق شرطًا محددًا.
FindIndex(System::Predicate<T>)يبحث عن عنصر يطابق شرطًا محددًا.
FindIndex(int, System::Predicate<T>)يبحث عن عنصر يطابق شرطًا محددًا.
FindIndex(int, int, System::Predicate<T>)يبحث عن عنصر يطابق شرطًا محددًا.
FindLast(System::Predicate<T>)يبحث عن العنصر الأخير الذي يطابق شرطًا محددًا.
ForEach(System::Action<T>)يطبق الإجراء على جميع العناصر في القائمة.
get_Capacity() constيحصل على سعة القائمة الحالية.
get_Count() const overrideيحصل على عدد العناصر في القائمة الحالية.
GetEnumerator() overrideيحصل على المكرّر للتنقل عبر عناصر القائمة.
GetRange(int, int)ينشئ شريحة من القائمة.
idx_get(int) const overrideيحصل على العنصر في موضع محدد.
idx_set(int, T) overrideيحدد العنصر في موضع محدد.
IndexOf(const T&) const overrideيحصل على الفهرس الأول للعنصر المحدد.
IndexOf(const T&, int) constيبحث عن العنصر المحدد في القائمة.
Insert(int, const T&) overrideيدرج العنصر في الموضع المحدد.
InsertRange(int, IEnumerablePtr)يدرج نطاق البيانات في موضع محدد.
LastIndexOf(const T&) constيبحث عن الكائن المحدد ويعيد الفهرس الصفري للحدوث الأخير داخل القائمة بأكملها.
LastIndexOf(const T&, int32_t) constيبحث عن الكائن المحدد ويعيد الفهرس الصفري للحدوث الأخير ضمن نطاق العناصر في الـList الذي يمتد من العنصر الأول إلى الفهرس المحدد.
LastIndexOf(const T&, int32_t, int32_t) constيبحث عن الكائن المحدد ويعيد الفهرس الصفري للحدوث الأخير ضمن نطاق العناصر في الـList الذي يحتوي على العدد المحدد من العناصر وينتهي عند الفهرس المحدد.
List()ينشئ قائمة فارغة.
List(int)ينشئ قائمة بسعة محددة مسبقًا.
List(IEnumerablePtr)منشئ النسخ.
operator[](int)دالة وصول.
operator[](int) constدالة وصول.
rbegin()يحصل على مكرر عكسي للعنصر الأخير في المجموعة (الأول في الاتجاه العكسي).
rbegin() constيحصل على مكرر عكسي للعنصر الأخير في المجموعة المؤهلة كـ const (الأول في الاتجاه العكسي).
Remove(const T&) overrideيزيل النسخة الأولى من العنصر المحدد من القائمة.
RemoveAll(Predicate<T>)يزيل جميع العناصر التي تطابق الشرط المحدد.
RemoveAt(int) overrideيزيل العنصر في الموضع المحدد.
RemoveRange(int, int)يزيل شريحة من القائمة.
rend()يحصل على مكرر عكسي لعنصر غير موجود قبل بداية المجموعة.
rend() constيحصل على مكرر عكسي لعنصر غير موجود قبل بداية المجموعة المؤهلة كـ const.
Reverse()يعكس ترتيب العناصر في القائمة بأكملها.
Reverse(int, int)يعكس ترتيب العناصر في شريحة القائمة.
set_Capacity(int)يضبط سعة القائمة.
Sort(const SharedPtr<System::Collections::Generic::IComparer<T>>&)يرتب العناصر في القائمة.
Sort()يرتب العناصر في القائمة باستخدام المقارن الافتراضي.
Sort(int, int, SharedPtr<System::Collections::Generic::IComparer<T>>)يرتب العناصر في شريحة القائمة.
Sort(Comparison<T>, bool)يرتب العناصر في القائمة.
ToArray() constيحوّل القائمة إلى مصفوفة.
TrimExcess()يضبط سعة القائمة لتتناسب مع حجمها.
TrueForAll(System::Predicate<T>)يحدد ما إذا كان كل عنصر في المجموعة يطابق الشروط المحددة بواسطة الشرط المحدد.
virtualizeBeginConstIterator() const overrideيحصل على تنفيذ begin const iterator للحاوية الحالية.
virtualizeBeginIterator() overrideيحصل على تنفيذ begin iterator للحاوية الحالية.
virtualizeEndConstIterator() const overrideيحصل على تنفيذ end const iterator للحاوية الحالية.
virtualizeEndIterator() overrideيحصل على تنفيذ end iterator للحاوية الحالية.

Typedefs

تعريف نوعالوصف
BaseTypeنوع الواجهة.
const_iteratorنوع المكرر الثابت.
const_reverse_iteratorنوع المكرر العكسي الثابت.
IEnumerablePtrحاوية تحتفظ بالعناصر من نفس النوع الذي نحتفظ به.
IEnumeratorPtrEnumerator نوع.
iteratorنوع المكرر.
reverse_iteratorنوع المكرر العكسي.
ValueTypeهذا النوع.
vector_tمعلومات RTTI.

ملاحظات

List - wrapper around std::vector to be used in translated code. Requires operator == to be impemented for element type. Objects of this class should only be allocated using System::MakeObject() function. Never create instance of this type on stack or using operator new, as it will result in runtime errors and/or assertion faults. Always wrap this class into System::SmartPtr pointer and use this pointer to pass it to functions as argument.

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

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

int main()
{
  // إنشاء القائمة الأولى.
  auto list1 = MakeObject<List<int>>();

  // ملء القائمة الأولى.
  list1->Add(3);
  list1->Add(1);
  list1->Add(-5);
  list1->Add(8);

  // فرز القائمة الأولى.
  // عناصر القائمة الأولى ستكون: {-5, 1, 3, 8}
  list1->Sort();

  // إزالة العنصر عند الفهرس 2.
  // عناصر القائمة الأولى ستكون: {-5, 1, 8}
  list1->RemoveAt(2);

  // إدراج العنصر في الفهرس 1.
  // عناصر القائمة الأولى ستكون: {-5, 15, 1, 8}
  list1->Insert(1, 15);

  // إنشاء القائمة الثانية.
  auto list2 = MakeObject<List<int>>();

  // ملء القائمة الثانية.
  list2->Add(10);
  list2->Add(20);
  list2->Add(30);

  // إلحاق العناصر من القائمة الثانية إلى الأولى.
  list1->AddRange(list2);

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

  return 0;
}
/*
This code example produces the following output:
-5 15 1 8 10 20 30
*/

انظر أيضًا