我有一个类库,但我只使用了其中的一部分。是否需要删除未使用的内容以缩小创建代码的大小(在发布配置中)?
据我所知,编译器会处理这个问题,删除代码不会改变 EXE 文件的大小。这会永远是真的吗?删除所有不需要的代码会花费很长时间,所以我想知道是否需要这样做。
更多信息:类库中有一些方法和类不是从执行代码中调用的,而是被类库中代码的其他部分引用(它们本身从未被调用)。
最佳答案
不,编译器也包含“死”代码。一个简单的原因是,并不总是能够准确地知道哪些代码会被执行,哪些代码不会被执行。例如,即使是从未被引用的私有(private)方法也可以通过反射调用,而公共(public)方法可以被外部程序集引用。
您可以使用工具来帮助您查找和删除未使用的方法(包括仅由其他未使用的方法调用的方法)。尝试 What tools and techniques do you use to find dead code?和 Find unused code让你开始。
关于c# - 编译器只会编译可以执行的代码吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10192076/