【问题标题】:What possible value (or danger) might this usage, non-usage, or abusage of System.Runtime.CompilerServices be?System.Runtime.CompilerServices 的这种使用、不使用或滥用可能有什么价值(或危险)?
【发布时间】:2013-03-09 22:13:29
【问题描述】:

在传统的意大利面条中,我遇到了这个辣肉丸:

//Keep around, might prove useful.
namespace System.Runtime.CompilerServices
{
    public sealed class IsVolatile
    {
        private IsVolatile()
        {
        }
    }
}

这可能有任何价值吗?或者也许是一个更好的问题,可能有任何伤害(保留)?

【问题讨论】:

  • 这是一个空壳(没有功能)。除了提醒壁橱里的骷髅之外,它为什么会有任何用处?可以在任何地方使用吗?
  • 呸,它甚至没有正确命名。核爆它。
  • 你省略的类中有代码吗?
  • 这个类从 .NET 1.0 开始就存在于 mscorlib 中。如果您没有为专门的应用程序重新实现 mscorlib,那么我相信您可以安全地删除该声明。
  • @George:不,仅此而已;如前所述,一个“空壳”

标签: c# namespaces compiler-services


【解决方案1】:

哈 - 看起来您遇到了类似于“我想要 LINQ 语法,但我在 2.0 领域”的情况,您可以通过以下方式“打开”LINQ 语法:

namespace System.Runtime.CompilerServices
{
    [AttributeUsage(AttributeTargets.Method, AllowMultiple = false, Inherited = false)]
    public class ExtensionAttribute : Attribute
    {
    }
}

仅在此处,您启用了volatile 关键字的使用。

【讨论】:

  • 下面有注释: // use: public volatile bool test; // ^ // |-- volatile 允许操作系统解释值。
  • 这肯定是真的旧代码...我认为volatile 早在VS 就已经支持...什么,VS2005?
  • 哦,这纯粹是为了编译器,如果需要说明的话 - 你不会找到任何实际的 code 引用该类。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-12-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多