default(object); 是什么意思?在 C# 中做什么?

2023-12-10

谷歌搜索只是找到了关键字,但我偶然发现了一些代码,上面写着

MyVariable = default(MyObject);

我想知道这意味着什么。


  • 对于引用类型,它返回null
  • 对于除以下以外的值类型Nullable<T>它返回一个零初始化值
  • For Nullable<T>它返回空(伪空)值(实际上,这是第二个项目符号的重新声明,但值得明确说明)

最大的用途是default(T)是在泛型中,像这样的东西Try...图案:

bool TryGetValue(out T value) {
    if(NoDataIsAvailable) {
        value = default(T); // because I have to set it to *something*
        return false;
    }
    value = GetData();
    return true;
}

碰巧,我也在一些代码生成中使用它,初始化字段/变量很痛苦 - 但如果你知道类型:

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

default(object); 是什么意思?在 C# 中做什么? 的相关文章

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

    我收到 YYYY MM DDThh mm ss S Z hh mm 这种格式的日期时间 我正在尝试使用复制该值strptime如下所示 struct tm time 0 char pEnd strptime datetime Y m dT
  • UTF8/UTF16 和 Base64 在编码方面有什么区别

    In c 我们可以使用下面的类来进行编码 System Text Encoding UTF8 System Text Encoding UTF16 System Text Encoding ASCII 为什么没有System Text En
  • 创建 DirectoryEntry 实例以供测试使用

    我正在尝试创建 DirectoryEntry 的实例 以便可以使用它来测试将传递 DirectoryEntry 的一些代码 然而 尽管进行了很多尝试 我还是找不到实例化 DE 并初始化它的 PropertyCollection 的方法 我有
  • 属性对象什么时候创建?

    由于属性实际上只是附加到程序集的元数据 这是否意味着属性对象仅根据请求创建 例如当您调用 GetCustomAttributes 时 或者它们是在创建对象时创建的 或者 前两个的组合 在由于 CLR 的属性扫描而创建对象时创建 从 CLR
  • FFMPEG Seeking 带来音频伪影

    我正在使用 ffmpeg 实现音频解码器 在读取音频甚至搜索已经可以工作时 我无法找到一种在搜索后清除缓冲区的方法 因此当应用程序在搜索后立即开始读取音频时 我没有任何工件 avcodec flush buffers似乎对内部缓冲区没有任何
  • SSH 主机密钥指纹与模式 C# WinSCP 不匹配

    我尝试通过 WinSCP 使用 C 连接到 FTPS 服务器 但收到此错误 SSH 主机密钥指纹 与模式不匹配 经过大量研究 我相信这与密钥的长度有关 当使用 服务器和协议信息 下的界面进行连接时 我从 WinSCP 获得的密钥是xx xx
  • C# 中可空类型是什么?

    当我们必须使用nullable输入 C net 任何人都可以举例说明 可空类型 何时使用可空类型 https web archive org web http broadcast oreilly com 2010 11 understand
  • 写入和读取文本文件 - C# Windows 通用平台应用程序 Windows 10

    有用 但在显示任何内容之前 您必须在文本框中输入内容 我想那是因为我使用了 TextChanged 事件处理程序 如果我希望它在没有用户交互的情况下显示文本文件的内容 我应该使用哪个事件处理程序 因此 我想在按下按钮时将一些数据写入 C W
  • 当 Cortex-M3 出现硬故障时如何保留堆栈跟踪?

    使用以下设置 基于 Cortex M3 的 C gcc arm 交叉工具链 https launchpad net gcc arm embedded 使用 C 和 C FreeRtos 7 5 3 日食月神 Segger Jlink 与 J
  • 按字典顺序对整数数组进行排序 C++

    我想按字典顺序对一个大整数数组 例如 100 万个元素 进行排序 Example input 100 21 22 99 1 927 sorted 1 100 21 22 927 99 我用最简单的方法做到了 将所有数字转换为字符串 非常昂贵
  • .Net Core / 控制台应用程序 / 配置 / XML

    我第一次尝试使用新的 ConfigurationBuilder 和选项模式进入 Net Core 库 这里有很多很好的例子 https docs asp net en latest fundamentals configuration ht
  • 在 ASP.Net Core 2.0 中导出到 Excel

    我曾经使用下面的代码在 ASP NET MVC 中将数据导出到 Excel Response AppendHeader content disposition attachment filename ExportedHtml xls Res
  • Windows 10 中 Qt 桌面应用程序的缩放不当

    我正在为 Windows 10 编写一个简单的 Qt Widgets Gui 应用程序 我使用的是 Qt 5 6 0 beta 版本 我遇到的问题是它根本无法缩放到我的 Surfacebook 的屏幕上 这有点难以判断 因为 SO 缩放了图
  • 已过时 - OpenCV 的错误模式

    我正在使用 OpenCV 1 进行一些图像处理 并且对 cvSetErrMode 函数 它是 CxCore 的一部分 感到困惑 OpenCV 具有三种错误模式 叶 调用错误处理程序后 程序终止 Parent 程序没有终止 但错误处理程序被调
  • GDK3/GTK3窗口更新的精确定时

    我有一个使用 GTK 用 C 语言编写的应用程序 尽管该语言对于这个问题可能并不重要 这个应用程序有全屏gtk window与单个gtk drawing area 对于绘图区域 我已经通过注册了一个刻度回调gtk widget add ti
  • 在Linux中使用C/C++获取机器序列号和CPU ID

    在Linux系统中如何获取机器序列号和CPU ID 示例代码受到高度赞赏 Here http lxr linux no linux v2 6 39 arch x86 include asm processor h L173Linux 内核似
  • 窗体最大化时自动缩放子控件

    有没有办法在最大化屏幕或更改分辨率时使 Windows 窗体上的所有内容自动缩放 我发现手动缩放它是正确的 但是当切换分辨率时我每次都必须更改它 this AutoScaleDimensions new System Drawing Siz
  • 如何使用 ReactiveList 以便在添加新项目时更新 UI

    我正在创建一个带有列表的 Xamarin Forms 应用程序 itemSource 是一个reactiveList 但是 向列表添加新项目不会更新 UI 这样做的正确方法是什么 列表定义 listView new ListView var
  • 更改显示的 DPI 缩放大小使 Qt 应用程序的字体大小渲染得更大

    我使用 Qt 创建了一些 GUI 应用程序 我的 GUI 应用程序包含按钮和单选按钮等控件 当我运行应用程序时 按钮内的按钮和字体看起来正常 当我将显示器的 DPI 缩放大小从 100 更改为 150 或 200 时 无论分辨率如何 控件的
  • 不同类型的指针可以互相分配吗?

    考虑到 T1 p1 T2 p2 我们可以将 p1 分配给 p2 或反之亦然吗 如果是这样 是否可以不使用强制转换来完成 或者我们必须使用强制转换 首先 让我们考虑不进行强制转换的分配 C 2018 6 5 16 1 1 列出了简单赋值的约束

随机推荐

  • 如何更改自定义轨道生成器的源? (雷神)

    我正在制作一个自定义生成器来生成新的 Rails 应用程序 我是这样做的 require thor require rails generators rails app app generator class AppBuilder lt R
  • ORACLE SQL 使用窗口函数运行 TOTAL 和 daytotal

    从 EMPLOYEE 表中 我想对记录数量 雇用的员工 进行分组 并且还有每天的运行总数 输入的格式是这样的 rownum Hired date time 1 1 10 2012 11 00 2 1 10 2012 13 00 3 20 1
  • 如何比较 if 语句中的多个字符串?

    我正在尝试检查 if 语句中的多种可能性 用户输入一个字符串 然后我检查该字符串是否有多种可能性 if theString Seven seven 7 theInt 7 cout lt lt You chose lt lt theInt l
  • Scala isInstanceOf 和类型擦除

    我很困惑如何isInstanceOf在 Scala 中工作 如果我做这样的事情 val x Int 5 x isInstanceOf Int 鉴于 Scala 确实进行了类型擦除 那么 JVM 不应该在运行时删除所有类型信息吗 它不是all
  • 如何获取Windows启动时间? [复制]

    这个问题在这里已经有答案了 如何使用某些 WinAPI 函数在 C 中获取 Windows 启动时间 我目前正在使用命令 systeminfo 但我正在寻找更合适的解决方案 我检查了任务管理器是如何做到这一点的 结果发现它使用ZwQuery
  • C++ 优化中的代码重新排序何时停止?

    我已经阅读了很多关于优化代码中的代码执行保证的问题 所以我试图编译一个关于允许 阻止编译器重新排序代码序列的原因列表 我已经从通常正确的内容开始回答 但我没有添加标准中的引号 这是根据我的经验得出的 如果有任何忘记的内容或对现有的要点进行扩
  • 使用Python多处理在worker之间共享变量[重复]

    这个问题在这里已经有答案了 如何读取和更新Python中多个worker之间共享的变量 例如 我正在使用 Python 中的多个进程扫描文件列表 并且想检查父目录是否已被扫描 def readFile filename Add the pa
  • R中Leaflet中聚集标记的聚合加权线串

    我正在尝试绘制位置和加权连接线串 当我放大或缩小时 标记的聚类会调整得很好 显示的集群标签是聚合的node val的标记 我想对线串做类似的事情 这样 该图不显示连接单个标记的蓝线 而是显示连接标记簇的线 并且 连接标记簇的新线串的宽度根据
  • 如何访问(转发)docker compose 网络内的公共 HTTP 请求 IP 地址?

    通过以下设置 只有 YARP 容器已发布端口 它正确设置了X Forward 供其他容器使用的标头 但不幸的是它是 docker compose 网关地址 当我想记录 公共 客户端的 IP 地址时 我得到 ffff 172 18 0 1这是
  • 如何创建具有依赖注入和接口的连接类?

    我正在读这个问题 PHP 多个不同的数据库依赖注入类 最佳答案 我理解这里使用接口背后的概念 但我不知道如何使用它 这是最重要的答案 抱歉 如果我不应该将其复制到这里 您应该首先为所有数据库操作创建一个接口 interface IDatab
  • d3 v4嵌套数据和堆积条形图

    I am trying to make a chart that looks like this 我有一个 D3 nest 数据结构 如下所示 key Area 1 values key 5 Validation Complete valu
  • Extjs 4通过ajax调用下载文件

    问题很简单 当我提交表单时 我必须下载一个文件 这是提交表单时的一个ajax调用 它允许我使用从表单 服务器端获取的数据构建一个文件 然后将其作为链接到警报 事实上 我的老板希望直接下载文件 而不是通过警报中的链接 所以我必须确保该文件可通
  • 如何在单元格更改上执行 JTable 选择所有文本

    我看过一些这样做的例子 但我仍然无法理解并且无法实现它 我想做的是单元格更改 焦点 下一个选定的单元格将选择所有文本 准备好让用户完全更改它 关于如何做有什么想法吗 更新 不知怎的 我设法完成了以下课程 但是 实施这个tblLayers s
  • 如何打印java txt文件中的列

    我正在尝试在一个 txt 文件上打印多个数组 其中有一个数组打印 然后有另一列装箱并有另一个数组打印 我如何格式化它才能工作 我不记得执行此操作的格式化命令 我需要所有列对齐 现在我有这个 private static void makeF
  • 包装python超类的所有方法

    如果我无法更改超类的代码 有没有办法包装超类的所有方法 作为一个最小的工作示例 请考虑这个基类Base 它有许多返回自身新实例的方法 以及派生类Child class Base def init self val self val val
  • Javascript appendChild onload 事件

    我将动态创建的图像元素附加到文档中 var img new Image img src test jpg img onload function var addedImg container appendChild img console
  • 基于 @AspectJ 的 Spring 3.1 AOP

    我正在尝试使用 Spring 3 1 运行基于 AspectJ 的 AOP 但无法正确配置切入点 切入点和建议方法是 切入点 Pointcut execution point public void selectAll 建议后 After
  • IMPORTHTML 或 IMPORTXML 从站点收集数据

    我已经多次尝试收集此表中的数据 我评论的两个函数的简单方法 我都尝试过 但没有成功 我想知道是否有人知道在 Google 表格中收集这些数据的任何其他方法 网站链接 https www onlinebettingacademy com st
  • 从 CSV 加载时 PostgreSQL/JooQ 批量插入性能问题;我该如何改进流程?

    For 这个项目 我打算制作一个 Web 版本 现在正在制作一个 PostgreSQL 9 x 后端 Web 应用程序将从该后端进行查询 现在 跟踪器会生成一个包含两个 CSV 的 zip 文件 在运行时将其加载到 H2 数据库中 其架构如
  • default(object); 是什么意思?在 C# 中做什么?

    谷歌搜索只是找到了关键字 但我偶然发现了一些代码 上面写着 MyVariable default MyObject 我想知道这意味着什么 对于引用类型 它返回null 对于除以下以外的值类型Nullable