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

如何在参数含in关键字时正确使用<inheritdoc cref="..."/>?

解决引用含in参数方法的歧义问题

可以用引用带in参数的方法,问题出在XML注释的cref语法不支持直接写in关键字,得用特性标记来替代。

正确的写法是给目标方法的in参数加上[In]特性标记,修改后的cref引用如下:

/// <summary>
/// ...
/// <inheritdoc cref="Get(ref X, ref Y, int, [In]Z)"/>
/// </summary>
public int Get(ref X a, int b, in Z d = default)
{
    ...
}

原理是XML注释的cref解析逻辑里,ref和out可以直接在cref里写,但in参数必须用[In]特性(对应System.Runtime.CompilerServices.InAttribute)来标记,IDE才能正确定位到带in参数的目标方法,不会出现歧义或语法错误。

如果IDE提示找不到[In],只需在代码文件顶部加上命名空间引用:

using System.Runtime.CompilerServices;

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.24 15:22:09