我有两个对象,我不想创建一个包装类来获取这两个对象的数据,没有'Out'参数是否有任何方法可以返回多个不同类型的对象?
非常感谢!!
谢谢
答案 0 :(得分:5)
没有。你不能。
但是,您可以使用数组或地图返回它们。
答案 1 :(得分:4)
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;
}
}
或
c#4.0中的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;
}
}
答案 2 :(得分:1)
在c ++中,可以使用名为std :: pair的东西来完成。有关如何在C#中执行此操作的StackOverflow帖子:What is C# analog of C++ std::pair?
答案 3 :(得分:0)
您可以返回列表&lt;对象&gt;。
答案 4 :(得分:0)
return new object[] { object1, object2 }
或者,您可以使用匿名类型。 See this article for more information