不能在此 ref ClassName (byRef) 方法功能 C# 7.2 上使用 类
Cannot use Classes on this ref ClassName (byRef) method Feature C# 7.2
我正在测试新的和闪亮的 C# 7.1/7.2/7.3 功能,当我尝试这个 ref Class 时,它不工作,同时这个 ref int 工作,你们有没有关于如何使其与 类?
一起工作的想法
代码示例:
public static bool Works(this ref int i)
{
return i == 0;
}
public static bool DontWorks(this ref Test i)
{
return i.A == 0;
}
public class Test
{
public int A { get; set; }
}
对不起,标题有点不好,但我不知道如何让它变得更好,如果你愿意,请随时给我建议或编辑。
感谢您的宝贵时间,祝您有愉快的一天。
Ref 扩展方法只允许在已知为结构的类型上使用。这是故意的。这背后的原因可以在 feature proposal document.
中找到
此外,常规 class 类型是引用类型。传递 reference type as a parameter does not copy the object, unlike with value type parameters.
我正在测试新的和闪亮的 C# 7.1/7.2/7.3 功能,当我尝试这个 ref Class 时,它不工作,同时这个 ref int 工作,你们有没有关于如何使其与 类?
一起工作的想法代码示例:
public static bool Works(this ref int i)
{
return i == 0;
}
public static bool DontWorks(this ref Test i)
{
return i.A == 0;
}
public class Test
{
public int A { get; set; }
}
对不起,标题有点不好,但我不知道如何让它变得更好,如果你愿意,请随时给我建议或编辑。
感谢您的宝贵时间,祝您有愉快的一天。
Ref 扩展方法只允许在已知为结构的类型上使用。这是故意的。这背后的原因可以在 feature proposal document.
中找到此外,常规 class 类型是引用类型。传递 reference type as a parameter does not copy the object, unlike with value type parameters.