C#에서의 using 키워드
개발 2007/02/28 01:41
.NET 프레임워크 2.0 부터 도입된 Dispose()를 자동적으로 호출하게 하는 새로운 구조인 using. 오늘 소스 코드를 살펴보다가 도저히 이해가 되질 않아서 책을 찾아봤더니 네임스페이스 선언에만 사용하는 줄 알았던 using을 이렇게도 쓴다고 한다.
using 블럭이 끝나면 해당 개체에 대해 Dispose()가 자동으로 호출됨. using 블럭이 끝남과 동시에 Graphics 객체에 대한 Dispose()가 호출되는 구조.
위 코드는 using을 사용하지 않은 아래 코드와 같은 의미.
여기에서 사용된 using 키워드는 네임스페이스에 대한 using 지시자와 혼동해서는 안됨. using 키워드를 사용함으로써 코드를 좀 더 간결하게 유지할 수 있음. 결국 개발자의 취향이긴 하지만.
자바하다가 C# 하려니 너무 많이 막히고 있다. orz...
출처 : Beginning C#
using (Graphics g = this.CreateGraphics())
{
g.DrawLine(Pens.Black, new Point(0,0), new Point(3,5));
}
{
g.DrawLine(Pens.Black, new Point(0,0), new Point(3,5));
}
using 블럭이 끝나면 해당 개체에 대해 Dispose()가 자동으로 호출됨. using 블럭이 끝남과 동시에 Graphics 객체에 대한 Dispose()가 호출되는 구조.
위 코드는 using을 사용하지 않은 아래 코드와 같은 의미.
Graphics g = this.this.CreateGraphics();
try {
g.DrawLine(Pens.Black, new Point(0,0), new Point(3,5));
}
finally {
if (g != null)
((IDisposable)g).Dispose();
}
try {
g.DrawLine(Pens.Black, new Point(0,0), new Point(3,5));
}
finally {
if (g != null)
((IDisposable)g).Dispose();
}
여기에서 사용된 using 키워드는 네임스페이스에 대한 using 지시자와 혼동해서는 안됨. using 키워드를 사용함으로써 코드를 좀 더 간결하게 유지할 수 있음. 결국 개발자의 취향이긴 하지만.
자바하다가 C# 하려니 너무 많이 막히고 있다. orz...
출처 : Beginning C#
'개발' 카테고리의 다른 글
| Retroweaver : 코드 작성은 1.5로, 디플로이는 1.4에 (2) | 2007/03/02 |
|---|---|
| 오늘의 삽질 (0) | 2007/03/01 |
| C#에서의 using 키워드 (6) | 2007/02/28 |
| 파이어폭스 속도 빨라지게 하는 방법. (0) | 2007/02/27 |
| 우분투 사용 시~작! (2) | 2007/02/25 |
| Eclipse SDK 3.2.2가 나왔군요 (0) | 2007/02/19 |

