这个问题是从编译器实现的角度来看。静态变量和静态变量的区别是什么?
我想知道关于C#中的静态变量,我找到了解释他们没有实现的原因(这里:http://blogs.msdn.com/b/csharpfaq/archive/2004/05/11/why-doesn-t-c-support-static-method-variables.aspx)。
引用“有可能通过具有类级别静态来获得几乎相同的效果” - 这让我好奇,有什么不同?假设C#会使用静态变量语法 - 实现可以“静静地将其作为静态字段推送并保留条件初始化(如有必要)”。完成。
我可以发现的唯一的问题是给定初始化时值类型的问题。还有什么其他东西可以适合“接近”?
我重申了这个问题 - 如何在C#编译器中实现静态变量仅使用现有功能(因此静态变量必须在当前状态下内部生成)。
我认为不同之处在于方法级别的静态只能从该方法访问,而类级别的静态可以从类中的任何位置和类之外的位置访问,如果它碰巧是公共的,虽然我猜如果您尝试以获得几乎相同的效果,你会宣布它是私人的。 – juharr
@juharr,请注意“编译器实现透视图”,创建只有知道它存在的一方才能访问的隐藏类成员是微不足道的。 – greenoldman
顺便说一句 - 你的问题含糊不清。也许可以澄清你真正想要问什么。 –