请问C#中是否有这样的一种自增函数?
请问C#中是否有这样的一种自增函数: 
 int   getAutoPlusPlus() 
 { 
 /* 
 函数不能调用外部定义的变量,无传入参数 
 该函数第一次返回的值可以自己定义, 
 但是,每调用一次函数,返回值就增大1个单位 
 */ 
 return   xxx; 
 } 
 假定该函数自己定义的第一个返回值是1,那么该函数达到的作用如下: 
 int   j; 
 for(int   i=0;i <2008;i++) 
 { 
    j=getAutoPlusPlus(); 
    Console.WriteLine(j); 
 } 
 屏幕上依次打印: 
 1 
 2 
 3 
 . 
 . 
 . 
 2008 
 希望大家能提供一个思路,谢谢!
------解决方案--------------------private int XXX = 1;   
 private int getAutoPlusPlus() 
 { 
     return XXX++; 
 }   
 如果防止对象实例化 
 那就弄成static的
------解决方案--------------------static
------解决方案--------------------private int getAutoPlusPlus() 
 { 
     static int XXX = 1; 
     return XXX++; 
 } 
------解决方案--------------------楼主不懂面向对象 
------解决方案--------------------新建一个cs文件,写上:   
 using System;   
 namespace GlobeVariable 
 { 
 	///  <summary>  
 	/// GlobeVariable 的摘要说明。 
 	///  </summary>  
 	public class GlobeVar 
 	{ 
 		private static int _xxx;   
                   public GlobeVar(int indexStart) 
                   { 
                         _xxx = indexStart; 
                   } 
                   public GlobeVar() 
                   {                          
                   }   
                   public int increase 
                   { 
                        _xxx++; 
                        get {return _xxx;} 
                    }   
 	} 
 }   
 然后在你的程序中调用GlobeVar类就可以了
------解决方案--------------------我的理解是:当一个对象有返回值的时候,这个对象的内部定义变量将被释放,系统将回收资源。这样的话,除非把这个对象放入一个外部全局变量中,并定义为static,不然很难做到。
------解决方案--------------------写入文件或是注册表   
------解决方案--------------------加个锁 否则可能会出错 
                   public int increase 
                   {                      
                        get { 
                          lock(this) 
 {   
                          _xxx++; 
                         return _xxx; 
 } 
                            } 
                    }
------解决方案--------------------class Program 
     { 
         static void Main(string[] args) 
         { 
             int j; 
             for (int i = 0; i  < 10; i++) 
             { 
                 j = getAutoPlusPlus(); 
                 Console.WriteLine(j); 
             } 
         } 
         static int i = 0; 
         static int getAutoPlusPlus() 
         { 
           i+=1; 
           return i; 
         } 
     } 
 }   
------解决方案--------------------上面那个少++了 
 int getAutoPlusPlus() 
 { 
 int i=0; 
 StreamWriter   sw   =   File.CreateText(c:\number.txt);  
 sw.WriteLine(i.tostring()); 
 sw.Close(); 
 System.IO.StreamReader StrReader= new System.IO.StreamReader(c:\number.txt); 
 while(StrReader.Peek()> 0 ) 
 { 
 int j=int32.parse(StrReader.ReadLine().Trim().ToString()); 
 } 
 j++; 
 return j