Редактирование: Сравнение Языков Программирования

Материал из eSyr's wiki.

Перейти к: навигация, поиск

Внимание: Вы не представились системе. Ваш IP-адрес будет записан в историю изменений этой страницы.

ПРЕДУПРЕЖДЕНИЕ: Длина этой страницы составляет 167 килобайт. Страницы, размер которых приближается к 32 КБ или превышает это значение, могут неверно отображаться в некоторых браузерах. Пожалуйста, рассмотрите вариант разбиения страницы на меньшие части.

Правка может быть отменена. Пожалуйста, просмотрите сравнение версий, чтобы убедиться, что это именно те изменения, которые вас интересуют, и нажмите «Записать страницу», чтобы изменения вступили в силу.

Текущая версия Ваш текст
Строка 1711: Строка 1711:
: new() - означает, что параметр-тип должен иметь конструктор умолчания (без параметров).
: new() - означает, что параметр-тип должен иметь конструктор умолчания (без параметров).
- 
-
Пример универсального шаблона (generic), реализующего односвязный список.
 
-
// type parameter T in angle brackets
 
-
public class GenericList<T>
 
-
{
 
-
// The nested class is also generic on T.
 
-
private class Node
 
-
{
 
-
// T used in non-generic constructor.
 
-
public Node(T t)
 
-
{
 
-
next = null;
 
-
data = t;
 
-
}
 
-
private Node next;
 
-
public Node Next
 
-
{
 
-
get { return next; }
 
-
set { next = value; }
 
-
}
 
-
// T as private member data type.
 
-
private T data;
 
-
// T as return type of property.
 
-
public T Data
 
-
{
 
-
get { return data; }
 
-
set { data = value; }
 
-
}
 
-
}
 
-
private Node head;
 
-
// constructor
 
-
public GenericList()
 
-
{
 
-
head = null;
 
-
}
 
-
// T as method parameter type:
 
-
public void AddHead(T t)
 
-
{
 
-
Node n = new Node(t);
 
-
n.Next = head;
 
-
head = n;
 
-
}
 
-
public IEnumerator<T> GetEnumerator()
 
-
{
 
-
Node current = head;
 
-
while (current != null)
 
-
{
 
-
yield return current.Data;
 
-
current = current.Next;
 
-
}
 
-
}
 
-
}
 
== Параллельное программирование ==
== Параллельное программирование ==

Пожалуйста, обратите внимание, что все ваши добавления могут быть отредактированы или удалены другими участниками. Если вы не хотите, чтобы кто-либо изменял ваши тексты, не помещайте их сюда.
Вы также подтверждаете, что являетесь автором вносимых дополнений, или скопировали их из источника, допускающего свободное распространение и изменение своего содержимого (см. eSyr's_wiki:Авторское право).
НЕ РАЗМЕЩАЙТЕ БЕЗ РАЗРЕШЕНИЯ ОХРАНЯЕМЫЕ АВТОРСКИМ ПРАВОМ МАТЕРИАЛЫ!

Шаблоны, использованные на этой странице:

Личные инструменты
Разделы