c# - 如何将函数参数列表转换为元组

标签 c# tuples

C# 是否有方便/标准的方法将函数参数列表“转换”为元组并返回?

如果 .NET 中某处存在此“转换”操作,则不应在语言级别实现(因为没有此类类型:“函数参数列表”),而应在反射库中的某处实现。在前向情况下,它返回元组的精确类型(通过函数名称),在后向情况下 - 使用元组字段调用函数。

它应该看起来像将函数参数列表打包/解包到元组。

附加: 是的,这在语言中是不可能的,但我也知道/感觉使用反射和堆栈浏览这是可能的。

最佳答案

如果这是您想要做的:

void Foo(int a, bool b, string c)
{
    Tuple<int,bool,string> argsTuple = pack();
}                                   // ^^^^^^

...那么答案是不,您不能方便地将方法的参数转换为元组。您可能可以通过反射来完成此操作,但这不是 .NET Framework 提供的开箱即用的功能。

相反,在函数的参数列表中解包元组 - 即 Foo(argsTuple) - 在 C# 中绝对不能这样做。

关于c# - 如何将函数参数列表转换为元组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4238727/

相关文章:

c# - 在 2d 矩阵中通过 Y 零查找 X 的快速算法是什么?

c# - 在 Visual Studio 中将 GUI 添加到现有代码

Python:按键集对列表进行分组

python - 随机选择一个元组集,然后将其从原始元组列表中删除

Python 元组切片

python - 在元组的第一个索引中查找具有非不同值的元组列表的索引

c# - 如何实现一个不简单封装字段的数组属性?

c# - IGrouping<int, Keypair> 到字典

c# - 向其他进程发送消息

python - 如何比较python中的列表/集合列表?