출처: http://kin.naver.com/qna/detail.nhn?d1id=1&dirId=1040102&docId=133887229
가능합니다. 닷넷 프레임워크 4.0에서 추가된 기능 중 하나로 Optional Parameter라고 합니다. Visual Studio 2010을 사용하시면, 해당 오류가 발생하지 않을 것 같습니다.
이런 방식의 표현법은 기존의 COM 개체를 사용할 때, 상당한 사용 편이를 제공합니다.
예를 들어, Microsoft Office 자동화 개체를 사용을 보면
using Microsoft.Office.Interop.Word.
var WordApplication =
new Microsoft.Office.Interop.Word.Application();WordApplication.Visible = true;
object missing = System.Reflection.Missing.Value;
object file =@"c:\test.txt";
object visible = true;
object readOnly = false;
Document aDoc = WordApplication.Documents.Open(
ref file,ref missing,ref readOnly,ref missing,
ref missing,ref missing,ref missing,ref missing,
ref missing,ref missing,ref missing,ref visible,
ref missing,ref missing,ref missing,ref missing);
이런 방식으로 값을 입력하지 않더라도 System.Reflection.Missing.Value를 사용해서 모두 입력해줘야 했습니다.(C#의 경우), 하지만 optional and named parameter를 사용하면
var betterWay = WordApplication.Documents.Open(file, ReadOnly: true, Visible: true);
betterWay.Activate();
와 같이 간결하게 표현할 수 있어, 작업량도 줄고 가독성 또한 좋아집니다.
마치 C++의 디폴트 인수같군요... 서로를 닮아가는 C#과 C++ --;;
근데 깔끔한걸로 치면 역시 C#
'스크랩' 카테고리의 다른 글
[스크랩]조합형/완성형/유니코드의 모든 것 (0) | 2015.08.09 |
---|---|
"독재국가 국민들도 인터넷을"...'그림자 인터넷' 추진 (0) | 2011.06.13 |
[스크랩]모바일 메신저 시대…SMS 사라질까 (0) | 2011.02.14 |
[스크랩] 스마트폰 ‘데이터 하마족’ 어쩌나 (0) | 2011.02.14 |
[스크랩] 오늘부터 인터넷 세상 IPv6로 전환 (0) | 2011.02.04 |