두 개체가 있고이 두 개체의 데이터를 포함하는 래퍼 클래스를 만들고 싶지 않습니다. '출력'매개 변수는 다른 형식의 개체를 두 개 이상 반환 할 수있는 방법이 아닙니까?C# .net에서 다른 유형의 개체를 두 개 이상 반환하려면 어떻게해야합니까?
정말로 감사하겠습니다!
감사합니다.
두 개체가 있고이 두 개체의 데이터를 포함하는 래퍼 클래스를 만들고 싶지 않습니다. '출력'매개 변수는 다른 형식의 개체를 두 개 이상 반환 할 수있는 방법이 아닙니까?C# .net에서 다른 유형의 개체를 두 개 이상 반환하려면 어떻게해야합니까?
정말로 감사하겠습니다!
감사합니다.
public class VPair<TFirst, TSecond>
{
public TFirst First { get; set; }
public TSecond Second { get; set; }
public VPair(TFirst first, TSecond second)
{
First = first;
Second = second;
}
}
또는 # 4.0
보너스 C로 Tuple
클래스 :
public class VTriple<TFirst, TSecond, TThird> : VPair<TFirst, TSecond>
{
public TThird Third { get; set; }
public VTriple(TFirst first, TSecond second, TThird third)
: base(first, second)
{
Third = third;
}
}
아니요.
배열이나 맵을 사용하여 반환 할 수 있습니다.
당신은> 목록 < 객체를 반환 할 수 있습니다.
C++에서 std :: pair라는 이름으로이 작업을 수행 할 수 있습니다. C#으로 그것을 수행하는 방법에 StackOverflow의 게시물이 있습니다 : What is C# analog of C++ std::pair?
return new object[] { object1, object2 }
양자 택일로, 당신은 익명의 유형을 사용할 수 있습니다. See this article for more information.
+1 - 가장 정숙한 해결책은 질문에서 배제됩니다! – Fenton