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

Go语言占位符变量的C#替代方案是什么?

C#中替代Go忽略参数写法的方案

在Go语言中,我们可以用_作为参数占位符,明确表示不需要使用该参数:

func isAvailableForUser(_ context.Context) bool {
    return true;
}

但在C#里,_是合法的变量名,并非类似Go的占位符。要实现类似的忽略参数效果,有以下几种可行方案:

  • 使用_作为参数名并忽略它
    这是最简洁的写法,虽然_是变量名,但只要不在方法体内使用它,就能达到和Go占位符一样的效果。即使编译器开启了未使用变量的警告,代码依然可以正常编译:

    private bool IsAvailableForUser(IContext _) => true;
    
  • 使用明确的“未使用”参数名
    如果觉得_不够清晰,可以给参数起一个明确表示未使用的名字,比如unusedContext,同样不在方法体内使用即可:

    private bool IsAvailableForUser(IContext unusedContext) => true;
    
  • 修改方法签名(若场景允许)
    如果该方法不需要实现特定接口或适配委托,完全可以直接移除不需要的参数,简化方法定义:

    private bool IsAvailableForUser() => true;
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.09 06:28:33