首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

请教C#中是否有这样的一种自增函数

2011-12-17 
请问C#中是否有这样的一种自增函数?请问C#中是否有这样的一种自增函数:intgetAutoPlusPlus(){/*函数不能调

请问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


}

[解决办法]
没传值,这回应该好使了
int getAutoPlusPlus()
{
int i;
int j;
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 )
{
j=int32.parse(StrReader.ReadLine().Trim().ToString());
}
j++;
i=j;
return j
}
[解决办法]
我正在用的:::
public long GetUserGroupID()
{
lock (this)
{
if (UserGroupID == -1)
{
}
return ++UserGroupID;
}
}

热点排行