c# 프로그래밍 책을 보는데 오랫만에 봐서 그런가 먼가 많이 건너뛰어버린 느낌 ㅠㅠ
스트림에서 갑자기 Dispose() 나오지 않나 StreamReader 클래스도 IDisposable 인터페이스 구현 이런 이야기 나오는것 봐서는
다시 봐야할 것 같다 -_ㅠ
아무튼!
using 은 name space를 정의하는데 쓰는 것 뿐만 아니라
내부에서 예외발생시 Dispose() 메소드를 호출해주는 유용한 녀석이라고 한다.
아래 예제는 삼항연산자는 아닌거 같은데 다시 봐야겠네..
string manyLines=@"This is line one
This is line two
Here is line three
The penultimate line is line four
This is the final, fifth line.";
using (var reader = new StringReader(manyLines))
{
string? item;
do {
item = reader.ReadLine();
Console.WriteLine(item);
} while(item != null);
}
c# 8.0 이후
string manyLines=@"This is line one
This is line two
Here is line three
The penultimate line is line four
This is the final, fifth line.";
using var reader = new StringReader(manyLines);
string? item;
do {
item = reader.ReadLine();
Console.WriteLine(item);
} while(item != null);
[링크 : https://docs.microsoft.com/ko-kr/dotnet/csharp/language-reference/keywords/using-statement]
+
IDisposable.Dispose 메서드 관리되지 않는 리소스의 확보, 해제 또는 다시 설정과 관련된 애플리케이션 정의 작업을 수행합니다. |
[링크 : https://docs.microsoft.com/ko-kr/dotnet/api/system.idisposable.dispose?view=netcore-3.1]
'Programming > c# & winform' 카테고리의 다른 글
c# out (0) | 2020.10.07 |
---|---|
c# 타입? 변수명; (0) | 2020.10.05 |
c# @문자열 (0) | 2020.10.05 |
winform socket (0) | 2020.09.29 |
c# conditional attribute (0) | 2020.09.29 |