未使用的代码是否包含在发布程序集中?

Art*_*eny 5 c#

使用VS2017中的C#,如果我不想注释掉未使用的方法(或类),它是否会被优化并且不包含在程序集中?还是会留在集会中,占用空间?

ken*_*yzx 5

它在构建中,因为编译器不知道它是否在运行时使用; 如果程序集是一个类库,它可以被其他程序集引用,并且可以使用代码(如果类和方法是公共的),因此编译器不会优化未使用的代码.

您可以使用"#if DEBUG"和"#endif"来包装未使用的代码,然后它将不会被编译到发布版本中.DEBUG符号未在发布配置中定义,因此编译器知道您不希望在发布版本中包含代码.