C# 额外的using语句会影响编译时间吗?

C# 额外的using语句会影响编译时间吗?,c#,C#,可能的重复项: 我想知道,如果我使用额外的using语句有什么关系吗?编译会花费更多的时间吗?会不会导致任何不好的结果? 谢谢。在处理实现接口的对象(如流、GDI对象、数据库连接等)时,应该使用语句。。。这确保了这些对象将被正确地处置,并最终释放与它们相关的任何资源 更新: 我可能误解了你关于使用的问题。如果您指的是将名称空间引入范围,那么不,如果您使用语句不使用名称空间,则没有什么不好的。编译器将自动删除它们,它们不会成为生成的IL的一部分。它们既不会减慢编译时间,也不会做任何坏事。就我

可能的重复项:

我想知道,如果我使用额外的using语句有什么关系吗?编译会花费更多的时间吗?会不会导致任何不好的结果? 谢谢。

在处理实现接口的对象(如流、GDI对象、数据库连接等)时,应该使用语句。。。这确保了这些对象将被正确地处置,并最终释放与它们相关的任何资源


更新:


我可能误解了你关于
使用
的问题。如果您指的是将名称空间引入范围,那么不,如果您使用语句不使用名称空间,则没有什么不好的。编译器将自动删除它们,它们不会成为生成的IL的一部分。它们既不会减慢编译时间,也不会做任何坏事。就我个人而言,我不会因为它们在我眼中丑陋而离开它们,但这是从纯粹的美学和个人角度出发的。当您右键单击源代码时,Visual Studio有一个很好的重构设置,它允许您重新指定和删除未使用的using语句。

否。这只是try/finally Dispose的语法糖

IDisposable myDisposable;

try
{
    myDisposable = new MyDisposable();
}
finally 
{
    myDisposable.Dispose();
}

我想他会问起如何使用System.Textetc@cichy哦,是的。我已经更新了我的答案。将未使用的using命名空间声明引入将不会被编译到IL中…你是对的…但它们会减慢IDE。我认为使用模拟的是try/finally而不是try/catch/finally。是的,我错了,并立即更正了。