.NET Framework 3.5 的元组 (.NET 4) 的等效项

2024-04-09

.NET Framework 3.5 中是否存在与 .NET 4 等效的类Tuple http://msdn.microsoft.com/en-us/library/system.tuple.aspx?

我想使用它来从方法返回多个值,而不是创建一个struct.


不,.Net 3.5 中没有。但创建自己的应该并不难。

public class Tuple<T1, T2>
{
    public T1 First { get; private set; }
    public T2 Second { get; private set; }
    internal Tuple(T1 first, T2 second)
    {
        First = first;
        Second = second;
    }
}

public static class Tuple
{
    public static Tuple<T1, T2> New<T1, T2>(T1 first, T2 second)
    {
        var tuple = new Tuple<T1, T2>(first, second);
        return tuple;
    }
}

UPDATE:将静态内容移至静态类以允许类型推断。通过更新,您可以编写类似的内容var tuple = Tuple.New(5, "hello");它会隐式地为您修复类型。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

.NET Framework 3.5 的元组 (.NET 4) 的等效项 的相关文章

  • 无法使用 strptime() 获取秒数

    我收到 YYYY MM DDThh mm ss S Z hh mm 这种格式的日期时间 我正在尝试使用复制该值strptime如下所示 struct tm time 0 char pEnd strptime datetime Y m dT
  • 如何在 Unity 中从 RenderTexture 访问原始数据

    问题的简短版本 我正在尝试访问 Unity 中 RenderTexture 的内容 我一直在使用 Graphics Blit 使用自己的材质进行绘制 Graphics Blit null renderTexture material 我的材
  • 模板类的不明确多重继承

    我有一个真实的情况 可以总结为以下示例 template lt typename ListenerType gt struct Notifier void add listener ListenerType struct TimeListe
  • FFMPEG Seeking 带来音频伪影

    我正在使用 ffmpeg 实现音频解码器 在读取音频甚至搜索已经可以工作时 我无法找到一种在搜索后清除缓冲区的方法 因此当应用程序在搜索后立即开始读取音频时 我没有任何工件 avcodec flush buffers似乎对内部缓冲区没有任何
  • 如何在我的应用程序中使用 Windows Key

    Like Windows Key E Opens a new Explorer Window And Windows Key R Displays the Run command 如何在应用程序的 KeyDown 事件中使用 Windows
  • 为什么禁止在 constexpr 函数中使用 goto?

    C 14 对你能做什么和不能做什么有规则constexpr功能 其中一些 没有asm 没有静态变量 看起来相当合理 但标准也不允许goto in constexpr功能 即使它允许其他控制流机制 这种区别背后的原因是什么 我以为我们已经过去
  • 跨多个控件共享事件处理程序

    在我用 C 编写的 Windows 窗体应用程序中 我有一堆按钮 当用户的鼠标悬停在按钮上时 我希望按钮的边框发生变化 目前我有以下多个实例 每个按钮一个副本 private void btnStopServer MouseEnter ob
  • 基于范围的 for 循环中的未命名循环变量?

    有没有什么方法可以不在基于范围的 for 循环中 使用 循环变量 同时也避免编译器发出有关未使用它的警告 对于上下文 我正在尝试执行以下操作 我启用了 将警告视为错误 并且我不想进行像通过在某处毫无意义地提及变量来强制 使用 变量这样的黑客
  • 为什么模板不能位于外部“C”块内?

    这是一个后续问题一个答案 https stackoverflow com questions 4866433 is it possible to typedef a pointer to extern c function type wit
  • 在 ASP.Net Core 2.0 中导出到 Excel

    我曾经使用下面的代码在 ASP NET MVC 中将数据导出到 Excel Response AppendHeader content disposition attachment filename ExportedHtml xls Res
  • 如何在 Team Foundation 上强制发表有意义的签入评论?

    我有一个开发团队有一个坏习惯 他们写道poor签入评论 当我们必须在团队基础上查看文件的历史记录时 这使得它成为一场噩梦 我已经启用了变更集评论政策 这样他们甚至可以在签到时留下评论 否则他们不会 我们就团队的工作质量进行了一些讨论 他们很
  • 使用 LINQ 查找列表中特定类型的第一个元素

    使用 LINQ 和 C 在元素列表中查找特定类型的第一个项目的最短表示法是什么 var first yourCollection OfType
  • 是否有比 lex/flex 更好(更现代)的工具来生成 C++ 分词器?

    我最近将源文件解析添加到现有工具中 该工具从复杂的命令行参数生成输出文件 命令行参数变得如此复杂 以至于我们开始允许它们作为一个文件提供 该文件被解析为一个非常大的命令行 但语法仍然很尴尬 因此我添加了使用更合理的语法解析源文件的功能 我使
  • 我的 strlcpy 版本

    海湾合作委员会 4 4 4 c89 我的程序做了很多字符串处理 我不想使用 strncpy 因为它不会终止 我不能使用 strlcpy 因为它不可移植 只是几个问题 我怎样才能让我的函数正常运行 以确保它完全安全稳定 单元测试 这对于生产来
  • 像“1$”这样的位置参数如何与 printf() 一起使用?

    By man I find printf d width num and printf 2 1 d width num 是等价的 但在我看来 第二种风格应该与以下相同 printf d num width 然而通过测试似乎man是对的 为什
  • .NET 选项将视频文件流式传输为网络摄像头图像

    我有兴趣开发一个应用程序 它允许我从 xml 构建视频列表 包含视频标题 持续时间等 并将该列表作为我的网络摄像头流播放 这意味着 如果我要访问 ustream tv 或在实时通讯软件上激活我的网络摄像头 我的视频播放列表将注册为我的活动网
  • 什么是 C 语言的高效工作流程? - Makefile + bash脚本

    我正在开发我的第一个项目 该项目将跨越多个 C 文件 对于我的前几个练习程序 我只是在中编写了我的代码main c并使用编译gcc main c o main 当我学习时 这对我有用 现在 我正在独自开展一个更大的项目 我想继续自己进行编译
  • EPPlus Excel 更改单元格颜色

    我正在尝试将给定单元格的颜色设置为另一个单元格的颜色 该单元格已在模板中着色 但worksheet Cells row col Style Fill BackgroundColor似乎没有get财产 是否可以做到这一点 或者我是否必须在互联
  • 在 ASP.NET 中将事件冒泡为父级

    我已经说过 ASP NET 中的层次结构 page user control 1 user control 2 control 3 我想要做的是 当控件 3 它可以是任何类型的控件 我一般都想这样做 让用户用它做一些触发回发的事情时 它会向
  • 如何在 C# 中播放在线资源中的 .mp3 文件?

    我的问题与此非常相似question https stackoverflow com questions 7556672 mp3 play from stream on c sharp 我有音乐网址 网址如http site com aud

随机推荐

  • swift 2.0 之后的 CGBitmapInfo alpha 掩码

    我正在使用这个 github 存储库中的库https github com Haneke HanekeSwift https github com Haneke HanekeSwift缓存从服务器下载的图像 更新到 swift 2 0 后
  • Android 上的 PhoneGap 需要所有这些权限吗?

    查看 hello world 的phonegap 文档 发现有很多权限 Android 清单中大约有 15 个 只是想知道是否所有这些都需要 See http phonegap com start android http phonegap
  • React 元素和粗箭头函数

    在 Redux 示例中 使用的语法是 const App gt div div
  • JAVA 图表库 - JFreeChart? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 首先 我确实阅读了所有其他类似的问题 并且查看了 JFreeChart 它似乎是为 Java 桌面应用程序生成图表的首选武器 它实际上也适
  • 如何在代码隐藏中向椭圆添加点击事件?

    要在后面的 C 代码中向按钮添加单击事件 我可以这样做 Button btn new Button btn Click btn Click 如果我有一个不包含 Click 的椭圆怎么办 Ellipse e new Ellipse e e C
  • 从 MySQL 表创建数组

    我正在尝试创建一个用于curl multi exec 的数组 但我似乎无法正确创建该数组 这是我的代码 SQL mysql query SELECT url FROM urls or die mysql error Query the sh
  • 如何重用javascript中的代码块

    我是学习 javascript 的新手 如果这个问题太基础 我深表歉意 我试图寻找解决方案 但我什么都不清楚 我已在此链接中创建了此代码 https jsfiddle net 5p7wzy9x 3 https jsfiddle net 5p
  • 在多个小部件上显示相同的 QPushButton

    我有两个小部件 真实的和假的 其中之一有一个 QPushButton 现在我希望在另一个小部件中显示相同的按钮 我该怎么做 我不想创建副本 我希望在不更改父级的情况下同时向另一个小部件显示相同的 QObject 作为示例 在下面我希望 my
  • 双队列代码需要减少

    有什么方法可以减少此代码以执行相同的操作 但少 100 个字符 这是一个简单的双边队列 具有pushHead popHead pushTail popTail 以及访问长度和isEmpty的方法 var makeDeque function
  • http post - 如何发送授权标头?

    如何在 Angular2 RC6 中向 http 请求添加标头 我得到以下代码 login login String password String Observable
  • 从 BigQuery 读取数据并将数据存储到 Google 存储(特殊字符问题)

    参考 Google 数据流可以使用现有的虚拟机而不是临时创建的虚拟机吗 https stackoverflow com questions 56167044 can google data flow use existent vm and
  • 如何将元素推入作为哈希值保存的数组引用中?

    data digits gt 1 2 3 letters gt a b c 我怎么能够push 4 into data digits 我是 Perl 新手 那些 符号对我来说看起来很奇怪 我有 PHP 背景 push data digits
  • 在堆积条上显示总计 Plotly

    如何在 Plotly 中的堆积条形图上显示总计 我可以将鼠标悬停并查看每个组的单独值 但看不到总数 您可以在中设置总和text属性并显示在hoverinfo import plotly plotly offline init noteboo
  • 使用 List 作为 State 时,Jetpack Compose 中的 item`属性发生变化时如何更新 UI?

    例如 我将数据加载到列表中 它由 MutableStateFlow 包装 然后将它们收集为 UI 组件中的状态 问题是 当我更改 MutableStateFlow 中的某个项目 例如修改属性 但不添加或删除时 UI 不会更改 那么 当我修改
  • pyspark/EMR 中大型 DataFrame 上的collect() 或 toPandas()

    我有一个由一台机器 c3 8xlarge 组成的 EMR 集群 在阅读了一些资源后 我了解到我必须允许相当数量的堆外内存 因为我使用的是 pyspark 所以我配置了集群如下 执行人一名 火花 执行器 内存 6g Spark executo
  • glob.glob 排序 - 不符合预期

    我使用 glob glob 从目录中读取一些文件 这些文件的命名如下 1 bmp 文件 名称继续采用以下命名模式 1 bmp 2 bmp 3 bmp 等等 这是我目前拥有的代码 但是虽然从技术上讲这确实排序 但它并不符合预期 files s
  • emacs shell 命令输出不显示 ANSI 颜色,但显示代码

    当我做M 在我的 emacs 21 4 中 ANSI 代码是字面意思 例如 ls color 0m 0m05420273 pdf 0m 0m100829 Ba o1 pdf 0m 有没有办法同时使用颜色和UTF8 同样的问题已经被之前在SO
  • DB::table('table') 和 model::('table') 之间的区别

    在 Laravel 上我们可以使用以下方式访问DB table table gt get 或使用model table gt all 我的问题是它们之间有什么区别 thanks 你可以这样做 因为Model和DB外观都实现了产生一个的函数B
  • 帮助 SQL Server 触发器在插入之前截断坏数据

    我们使用了一个 Web 服务 该服务决定将字段的最大长度从 255 更改为 255 我们这边有一个旧的供应商表 其上限仍然为 255 我们希望使用触发器来暂时解决这个问题 直到我们可以实现在我们的下一次迭代中 将提供更加商业友好的解决方案
  • .NET Framework 3.5 的元组 (.NET 4) 的等效项

    NET Framework 3 5 中是否存在与 NET 4 等效的类Tuple http msdn microsoft com en us library system tuple aspx 我想使用它来从方法返回多个值 而不是创建一个s