c# - 在静态方法中访问参数的私有(private)成员?

标签 c# .net .net-2.0

这段代码如何编译? operator int 中的以下代码可以访问 MyValue 类的私有(private)变量?为什么?

class Program
{
    static void Main(string[] args)
    {
        Myvalue my = new Myvalue(100);
        Console.WriteLine(my + 100);
        Console.Read();
    }
}


public class Myvalue
{
    private int _myvalue;

    public Myvalue(int value)
    {
        _myvalue = value;
    }

    public static implicit operator int(Myvalue v)
    {
        return v._myvalue;
    }
}

最佳答案

因为在类中,所以可以访问类中的私有(private)变量。就像您的实例公共(public)方法一样。它也以相反的方式工作。您可以从实例成员访问私有(private)静态成员以创建单态模式。

关于c# - 在静态方法中访问参数的私有(private)成员?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1631124/

相关文章:

c# - 如何将模型属性包装在 ViewModel 属性中

c# - 是否有与 Java 的 LineNumberReader 等效的 C#?

c# - RichTextBox 中的摄氏度符号

c# - 谁能告诉我为什么这个 SQL 查询不起作用

c# - 有没有办法在 C#/VB.NET 中伪造继承?

c# - 将大量对象有效地匹配到 csv 标题映射

c# - 使用 lock(typeof(string)) 的含义是什么

c# - .NET 货币格式化程序 : can I specify the use of banker's rounding?

c# - 输入的原始命令行

.net - BeginInvoke 使用/不使用 MethodInvoker — 有什么不同吗?