例如,在XNA框架中有一个SpriteBatch
Class.该SpriteBatch.Begin()
方法接受如下参数:
spriteBatch.Begin(SpriteSortMode.FrontToBack, BlendState.AlphaBlend);
Run Code Online (Sandbox Code Playgroud)
如何创建一个以相同方式接受参数的类?
创建一个Enum
:
enum FooBarMode
{
FrontToBack,
BackToFront,
Whatever
}
Run Code Online (Sandbox Code Playgroud)
并将其用作参数:
void DoSomething(FooBarMode mode)
{
switch (mode) // just as an example
{
case FooBarMode.FrontToBack:
Console.WriteLine("FrontToBack");
break;
case FooBarMode.BackToFront:
Console.WriteLine("BackToFront");
break;
case FooBarMode.Whatever:
Console.WriteLine("Whatever");
break;
default:
throw new ArgumentOutOfRangeException("mode");
}
}
Run Code Online (Sandbox Code Playgroud)