namespace나 using 등 생략함
class A { }
class Parent
{
Foo(A a, int b = 0) ⇒ WriteLine("1");
Foo<T>(T a) ⇒ WriteLine("2");
}
class Child : Parent
{
Foo(A a) ⇒ WriteLine("3");
Foo(params A[] a) ⇒ WriteLine("4");
}
이때
var a = new A();
var x = new Child();
x.Foo(a);
출력 결과는??
2
나는 아직 c# 공부가 모자라구나
3
해당 댓글은 삭제되었습니다.
다 void인데 머 중요한건 아니니
이건 C#문제가 아니라 상속을 아냐 모르냔데
앗 2랑 3 위치 바꿔적었네
근데 이거 ambiguous call 이라든가 컴파일 에러 안남? 3이랑 4를 어떻게 구분하지? 파라미터가 하나일때 뭘 선택할지 기준같은게 있나?