110,499
社区成员
发帖
与我相关
我的任务
分享
Type stringType = typeof(string);
string str = Activator.CreateInstance(stringType, '-', 16) as string;
//same as
//string string = new string('-', 16);
[/quote]
这个好用 记下了。
Activator 还这个方法。CreateInstance(String, String) 这个不知道执行效率如何。看它的描述是要查找的有没有超过log(1)的复杂度。 看见查找感觉速度堪忧啊。
Type stringType = typeof(string);
string str = Activator.CreateInstance(stringType, '-', 16) as string;
//same as
//string string = new string('-', 16);
public static void registmsginfo(int poolsize = 2, MSGType registid = MSGType.none)
{
if (registid == MSGType.none)
{
for (int i = 0; i < msgtypespool.Length; i++)
{
msgtypespool[i] = new Queue<MSGBase>();
}
}
for (int i = 0; i < poolsize; i++)
{
if (registid == MSGType.MSGSample || registid == MSGType.none)
{
msgtypespool[(int)MSGType.MSGSample].Enqueue(new MSGSample()); //...
}
if (registid == MSGType.MSGVersion || registid == MSGType.none)
{
msgtypespool[(int)MSGType.MSGVersion].Enqueue(new MSGVersion());
}
if (registid == MSGType.MSGLogin || registid == MSGType.none)
{
msgtypespool[(int)MSGType.MSGLogin].Enqueue(new MSGLogin());
}
if (registid == MSGType.MSGPlayerInfo || registid == MSGType.none)
{
msgtypespool[(int)MSGType.MSGPlayerInfo].Enqueue(new MSGPlayerInfo());
}
if (registid == MSGType.MSGStart || registid == MSGType.none)
{
msgtypespool[(int)MSGType.MSGStart].Enqueue(new MSGStart());
}
if (registid == MSGType.MSGCreateRoom || registid == MSGType.none)
{
msgtypespool[(int)MSGType.MSGCreateRoom].Enqueue(new MSGCreateRoom());
}
if (registid == MSGType.MSGDestroyRoom || registid == MSGType.none)
{
msgtypespool[(int)MSGType.MSGDestroyRoom].Enqueue(new MSGDestroyRoom());
}
if (registid == MSGType.MSGGetScore || registid == MSGType.none)
{
msgtypespool[(int)MSGType.MSGGetScore].Enqueue(new MSGGetScore());
}
if (registid == MSGType.MSGScore || registid == MSGType.none)
{
msgtypespool[(int)MSGType.MSGScore].Enqueue(new MSGScore());
}
if (registid == MSGType.MSGPlayerLost || registid == MSGType.none)
{
msgtypespool[(int)MSGType.MSGPlayerLost].Enqueue(new MSGPlayerLost());
}
if (registid == MSGType.MSGTarget || registid == MSGType.none)
{
msgtypespool[(int)MSGType.MSGTarget].Enqueue(new MSGTarget());
}
if (registid == MSGType.MSGSkill || registid == MSGType.none)
{
msgtypespool[(int)MSGType.MSGSkill].Enqueue(new MSGSkill());
}
if (registid == MSGType.MSGDead || registid == MSGType.none)
{
msgtypespool[(int)MSGType.MSGDead].Enqueue(new MSGDead());
}
if (registid == MSGType.MSGReLife || registid == MSGType.none)
{
msgtypespool[(int)MSGType.MSGReLife].Enqueue(new MSGReLife());
}
}
}