You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

咨询C#循环中未定义下划线_的语法含义

C#中_丢弃变量的含义

你看到的这个_是C# 7.0及以上版本引入的丢弃变量(Discard),是专门用来处理“不需要使用的返回值”的语法特性。

具体作用:

  • StringBuilder.AppendFormat方法的设计是返回自身实例,目的是支持链式调用(比如sb.AppendFormat(...).AppendLine(...))。但你的代码里不需要这种链式调用,直接调用方法就够了。
  • 如果直接写sb.AppendFormat(...),编译器会检测到方法的返回值没被使用,可能抛出警告。用_ = ...接收返回值,就是明确告诉编译器“我知道有返回值,但我不需要用它”,从而避免警告。
  • 丢弃变量是一个虚拟的只读变量,编译器不会为它分配内存,只是作为一个语法标记,表明开发者有意忽略这个返回值。

对应代码示例:

var sb = new StringBuilder();
foreach (var ns in this.Namespaces)
{
    _ = sb.AppendFormat(CultureInfo.InvariantCulture, " {0}", ns.Value);
}

内容的提问来源于stack exchange,提问作者Skary

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.08 02:10:25