C#でマーカーインターフェイスをローカルに作成できるかどうかは、たとえばforeachループで考えられます。C#の匿名マーカーインターフェイス?
HandleInputメソッドとUpdateメソッドが呼び出されるべきgamecomponentsがあるとします。これらのメソッドは対応するインタフェースで定義されており、それぞれIUpdateable & IInputHandlerです。 iterationvariablesの種類がで構成され、一時的なマーカーインタフェースであったことを指定する方法があった場合、それは非常に巧妙になり、しかし
foreach (var component in Components)
{
if (component.Enabled)
component.Update(gameTime);
if (component.Litsening)
component.HandleInput(gameTime, InputManager);
}
:私たちは、当然のことながら、このような通常のforeachループを行うことができますIUpdateable & IInputHandler両方:
foreach ((IInputHandler, IUpdateable) component in Components)
{
if (component.Enabled)
component.Update(gameTime);
if (component.Litsening)
component.HandleInput(gameTime, InputManager);
}
が、これは可能でしょうし、それが望ましいのでしょうか?個人的に私はそれをエレガントなものと考えています。 //おかげで、フィリップ・シールド
2番目のケースのメリット/意味は何ですか? – Tigran
あなたはどんな問題を解決しようとしていますか? – jgauffin