작성
·
396
0
using System;
namespace ConsoleApp1
{
class Program
{
public delegate void OnInputKey();
public static event OnInputKey InputKey;
static void TargetFunc() => Console.WriteLine("input received");
static void Main()
{
InputKey += TargetFunc;
while (true)
{
Update();
}
}
public static void Update()
{
if (Console.KeyAvailable == false)
{
return;
}
ConsoleKeyInfo info = Console.ReadKey();
if (info.Key == ConsoleKey.A)
{
InputKey();
}
}
}
}
제가 예문의 InputManager 클래스 안의 것을 전부 Program 클래스 안으로 몰아 넣어서 기능하다록 코드를 재구성 해봤는데, 여기서 InputKey와 TargetFunc 함수 선언부에 static을 붙이지 않으면
"static이 아닌 필드 메서드 또는 속성 에 개체 참조가 필요합니다" 라는 에러가 뜨더라구요
왜그런건가요?