using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace GenercityApplication
{
public class GenericList<T> {
private Node head;
private class Node {
private Node next;
private T data;
public Node(T t) {
next = null;
data = t;
}
public Node Next {
get { return next; }
set { next = value; }
}
public T Data {
get { return data; }
set { data = value; }
}
}
public GenericList() {
head = null;
}
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;
}
}
}
class People {
public int age;
public string name;
}
class TestGenericList {
static void Main() {
GenericList<People> list = new GenericList<People>();
//for (int x = 0; x < 10; x++) {
// list.AddHead(x);
//}
//foreach (int i in list) {
// Console.WriteLine(i + "");
//}
list.AddHead(new People());
Console.Read();
}
}
}
官网上的事例。