2012-01-27 2 views
2

나는 단지 1 네임 스페이스 이러한 2 개 개의 다른 코드를 가지고 : 나는 전혀 여기에 어떤 차이가 표시되지네임 스페이스의 외부/내부로로드가로드되는 경우로드하십시오.

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Text; 
using System.Reflection; 
using System.IO; 

namespace blabla 
{ 
    [...] 
} 

namespace blabla 
{ 
    using System; 
    using System.Collections.Generic; 
    using System.Linq; 
    using System.Text; 
    using System.Reflection; 
    using System.IO; 

    [...] 
} 

을하지만 그 정말로 경우? 성능에 관계없이 어떤 의미가 있습니까?

+0

참조 http://blogs.msdn.com/b/ericlippert/archive/2007/06/25/inside-or-outside.aspx 여기 –

+0

더 많은 정보 : HTTP ://stackoverflow.com/questions/125319/should-usings-be-inside-or-outside-the-namespace –

답변

2

성능면에서 차이가 없습니다. 네임 스페이스는 코드 구성 및 범위 지정 방법입니다. 그래서 귀하의 경우, 상태를 사용하여 첫 번째 스 니펫에 전역 적으로 정의되고 두 번째 스 니펫에 대해 내부 네임 스페이스가 정의됩니다. 두 경우 모두 물리 어셈블리는 두 경우 모두 동일하게 참조됩니다.

1

범위 선언의 문제입니다.

첫 번째 경우에는 파일 수준에서 사용 문을 "선언"합니다.이 문은이 파일에서 선언 할 수있는 여러 네임 스페이스에 유효 함을 의미합니다.

두 번째 경우에는 using 문이 정의 된 (namespace-) 범위 내에서만 유효합니다.

희망이 도움이 :)