Loading

一个泛型链表

 

 

 1     internal class Node
 2     {
 3         protected Node m_next;
 4         public Node(Node next)
 5         {
 6             m_next = next;
 7         }
 8 
 9     }
10     internal class TypedNode<T> : Node
11     {
12         public T m_data;
13         public TypedNode(T data)
14             : this(data, null)
15         {
16 
17         }
18         public TypedNode(T data, Node next)
19             : base(next)
20         {
21             m_data = data;
22         }
23         public override string ToString()
24         {
25             return m_data.ToString() + ((m_next == null ? null : m_next.ToString()));
26         }
27     }

 

测试代码:

            Node head = new TypedNode<Char>('.');
            head = new TypedNode<DateTime>(DateTime.Now, head);
            head = new TypedNode<string>(" Today is ", head);
            Console.WriteLine(head.ToString());

 

Codes from <CLR via C# 3>

posted @ 2012-05-10 23:51  韩严重  阅读(191)  评论(0编辑  收藏  举报