飘摇's profile呵呵,我的空间PhotosBlogListsMore Tools Help

飘摇 风

Occupation
Location
什么时候会好起来啊!

Feed

The owner hasn't specified a feed for this module yet.
No list items have been added yet.
Photo 1 of 4
More albums (1)
No list items have been added yet.

呵呵,我的空间

加油啊
11/2/2006

泛型介绍(C# 编程指南)

泛型类和泛型方法同时具备可重用性、类型安全和效率,这是非泛型类和非泛型方法无法具备的。泛型通常用在集合和在集合上运行的方法中。.NET Framework 2.0 版类库提供一个新的命名空间 System.Collections.Generic,其中包含几个新的基于泛型的集合类。建议面向 2.0 版的所有应用程序都使用新的泛型集合类,而不要使用旧的非泛型集合类,如 ArrayList。有关更多信息,请参见 .NET Framework 类库中的泛型(C# 编程指南)

当然,也可以创建自定义泛型类型和方法,以提供自己的通用解决方案,设计类型安全的高效模式。下面的代码示例演示一个用于演示用途的简单泛型链接列表类。(大多数情况下,建议使用 .NET Framework 类库提供的 List<T> 类,而不要自行创建类。)在通常使用具体类型来指示列表中所存储项的类型时,可使用类型参数 T。其使用方法如下:

  • 在 AddHead 方法中作为方法参数的类型。

  • 在 Node 嵌套类中作为公共方法 GetNext 和 Data 属性的返回类型。

  • 在嵌套类中作为私有成员数据的类型。

注意,T 可用于 Node 嵌套类。如果使用具体类型实例化 GenericList<T>(例如,作为 GenericList<int>),则所有的 T 都将被替换为 int

C#  CopyCode image复制代码
// 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;
        }
    }
}

下面的代码示例演示客户端代码如何使用泛型 GenericList<T> 类来创建整数列表。只需更改类型参数,即可方便地修改下面的代码示例,创建字符串或任何其他自定义类型的列表:

C#  CopyCode image复制代码
class TestGenericList
{
    static void Main()
    {
        // int is the type argument
        GenericList<int> list = new GenericList<int>();

        for (int x = 0; x < 10; x++)
        {
            list.AddHead(x);
        }

        foreach (int i in list)
        {
            System.Console.Write(i + " ");
        }
        System.Console.WriteLine("\nDone");
    }
}

请参见

参考

10/10/2006

加班看规范

今天晚上又要加班,看公司的编码规范!听说以后写出来的代码如果不符合规范的话就会扣分,打回来让重新写!以前没有怎么养成良好的编码习惯,现在真是郁闷!没办法,看呗!
哎,这要求还真多,光C#规范都27页,累啊!
9/22/2006

今天辞职申请批了

今天辞职申请终于给批了,毕业后的第二份工作也就这样结束了!其实我还是真的不想这么早就换工作,但是没有办法,现在的公司太让人失望了,说话不算数,不讲诚信!事情都发生了,然后才说我们都知道情况,是部门沟通出了点问题,真他吗的会找理由!自圆不了其说,就那还好意思说!虽然如今这年头厚道的人很少了,但人毕竟不能无耻到这种地步吧!
没有办法,才选择离开!
8/16/2006

累了

很累,想休息了