부모글 보이기/감추기 AD BLOCK 해제 요청 이 글에는 광고가 많이 들어가 있지 않습니다. adblock을 해제하셔도 글을 읽는데 그다지 부담이 없으니 해제를 부탁드립니다. (연관된 글이 15개 있습니다.) C# 9.0 - (8) 정적 익명 함수 (static anonymous functions) C# 9.0 - (1) 대상으로 형식화된 new 식(Target-typed new expressions) ; https://www.sysnet.pe.kr/2/0/12363 C# 9.0 - (2) localsinit 플래그 내보내기 무시(Suppress emitting localsinit flag) ; https://www.sysnet.pe.kr/2/0/12364 C# 9.0 - (3) 람다 메서드의 매개 변수 무시(Lambda discard parameters) ; https://www.sysnet.pe.kr/2/0/12365 C# 9.0 - (4) 원시 크기 정수(Native ints) ; https://www.sysnet.pe.kr/2/0/12366 C# 9.0 - (5) 로컬 함수에 특성 지정 가능(Attributes on local functions) ; https://www.sysnet.pe.kr/2/0/12372 C# 9.0 - (6) 함수 포인터(Function pointers) ; https://www.sysnet.pe.kr/2/0/12374 C# 9.0 - (7) 패턴 일치 개선 사항(Pattern matching enhancements) ; https://www.sysnet.pe.kr/2/0/12383 C# 9.0 - (8) 정적 익명 함수 (static anonymous functions) ; https://www.sysnet.pe.kr/2/0/12389 C# 9.0 - (9) 레코드 (Records) ; https://www.sysnet.pe.kr/2/0/12392 C# 9.0 - (10) 대상으로 형식화된 조건식(Target-typed conditional expressions) ; https://www.sysnet.pe.kr/2/0/12399 C# 9.0 - (11) 공변 반환 형식(Covariant return types) ; https://www.sysnet.pe.kr/2/0/12402 C# 9.0 - (12) foreach 루프에 대한 GetEnumerator 확장 메서드 지원(Extension GetEnumerator) ; https://www.sysnet.pe.kr/2/0/12403 C# 9.0 - (13) 모듈 이니셜라이저(Module initializers) ; https://www.sysnet.pe.kr/2/0/12404 C# 9.0 - (14) 부분 메서드에 대한 새로운 기능(New features for partial methods) ; https://www.sysnet.pe.kr/2/0/12405 C# 9.0 - (15) 최상위 문(Top-level statements) ; https://www.sysnet.pe.kr/2/0/12406 C# 9.0 - (16) 제약 조건이 없는 형식 매개변수 주석(Unconstrained type parameter annotations) ; https://www.sysnet.pe.kr/2/0/12423 (이번 실습은 - 오늘 기준 16.7.7의 Visual Studio 2019에서는 컴파일이 안 되고 "16.8.x"의 Preview 버전에서 가능합니다.) C# 7.0에 로컬 함수(Local function)가 추가되고, C# 8.0에 로컬 함수의 static 정의가 가능해졌는데요. 마찬가지로 (C# 3.0부터 있었던) 람다 식과 (C# 2.0부터 있었던) 익명 메서드에 (이제서야) static 정의를 할 수 있게 되었습니다. 기능은 동일하게, 람다 및 익명 메서드 내에서 외부 scope의 변수를 명시적으로 캡처하지 못하게 만드는 역할을 합니다. using System; class Program { static void Main(string[] args) { { string title = "console: "; Func<int, string> func = static i => { // Error CS8820 A static anonymous function cannot contain a reference to 'title'. // return title + i.ToString(); return i.ToString(); }; Console.WriteLine(func(10)); } { const string title = "console: "; Func<int, string> func = static delegate (int i) { // const 변수의 경우 참조에 대한 부작용이 없으므로 사용 가능 return title + i.ToString(); }; Console.WriteLine(func(10)); } } } (첨부 파일은 이 글의 예제 코드를 포함합니다.) [이 글에 대해서 여러분들과 의견을 공유하고 싶습니다. 틀리거나 미흡한 부분 또는 의문 사항이 있으시면 언제든 댓글 남겨주십시오.] [다음 글] 디버깅 기술: 173. windbg - System.Configuration.ConfigurationErrorsException 예외 분석 방법[이전 글] 오류 유형: 674. 어느 순간부터 닷넷 응용 프로그램 실행 시 System.Configuration.ConfigurationErrorsException 예외가 발생한다면? [연관 글] .NET Framework: 947. C# 9.0 - (1) 대상으로 형식화된 new 식(Target-typed new expressions).NET Framework: 948. C# 9.0 - (2) localsinit 플래그 내보내기 무시(Suppress emitting localsinit flag).NET Framework: 949. C# 9.0 - (3) 람다 메서드의 매개 변수 무시(Lambda discard parameters).NET Framework: 950. C# 9.0 - (4) 원시 크기 정수(Native ints).NET Framework: 951. C# 9.0 - (5) 로컬 함수에 특성 지정 가능(Attributes on local functions).NET Framework: 953. C# 9.0 - (6) 함수 포인터(Function pointers).NET Framework: 956. C# 9.0 - (7) 패턴 일치 개선 사항(Pattern matching enhancements).NET Framework: 959. C# 9.0 - (9) 레코드(Records).NET Framework: 961. C# 9.0 - (10) 대상으로 형식화된 조건식(Target-typed conditional expressions).NET Framework: 962. C# 9.0 - (11) 공변 반환 형식(Covariant return types).NET Framework: 963. C# 9.0 - (12) foreach 루프에 대한 GetEnumerator 확장 메서드 지원(Extension GetEnumerator).NET Framework: 964. C# 9.0 - (13) 모듈 이니셜라이저(Module initializers).NET Framework: 965. C# 9.0 - (14) 부분 메서드에 대한 새로운 기능(New features for partial methods).NET Framework: 966. C# 9.0 - (15) 최상위 문(Top-level statements).NET Framework: 974. C# 9.0 - (16) 제약 조건이 없는 형식 매개변수 주석(Unconstrained type parameter annotations) [최초 등록일: 11/1/2020] [최종 수정일: 11/22/2020] 이 저작물은 크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스에 따라 이용하실 수 있습니다. by SeongTae Jeong, mailto:techsharer at outlook.com 비밀번호 댓글 작성자 1 2 3 4 5 6 7 8 9 10 11 12 13 [14] 15 ... NoWriterDateCnt.TitleFile(s) 13280정성태3/9/20234597개발 환경 구성: 670. WSL 2에서 호스팅 중인 TCP 서버를 외부에서 접근하는 방법13279정성태3/9/20234121오류 유형: 851. 파이썬 ModuleNotFoundError: No module named '_cffi_backend'13278정성태3/8/20234151개발 환경 구성: 669. WSL 2의 (init이 아닌) systemd 지원 [1]13277정성태3/6/20234805개발 환경 구성: 668. 코드 사인용 인증서 신청 및 적용 방법(예: Digicert)13276정성태3/5/20234471.NET Framework: 2102. C# 11 - ref struct/ref field를 위해 새롭게 도입된 scoped 예약어13275정성태3/3/20234786.NET Framework: 2101. C# 11의 ref 필드 설명13274정성태3/2/20234353.NET Framework: 2100. C# - ref 필드로 ref struct 타입을 허용하지 않는 이유13273정성태2/28/20234083.NET Framework: 2099. C# - 관리 포인터로서의 ref 예약어 의미13272정성태2/27/20234354오류 유형: 850. SSMS - mdf 파일을 Attach 시킬 때 Operating system error 5: "5(Access is denied.)" 에러13271정성태2/25/20234267오류 유형: 849. Sql Server Configuration Manager가 시작 메뉴에 없는 경우13270정성태2/24/20233869.NET Framework: 2098. dotnet build에 /p 옵션을 적용 시 유의점13269정성태2/23/20234428스크립트: 46. 파이썬 - uvicorn의 콘솔 출력을 UDP로 전송13268정성태2/22/20234982개발 환경 구성: 667. WSL 2 내부에서 열고 있는 UDP 서버를 호스트 측에서 접속하는 방법13267정성태2/21/20234895.NET Framework: 2097. C# - 비동기 소켓 사용 시 메모리 해제가 finalizer 단계에서 발생하는 사례113266정성태2/20/20234503오류 유형: 848. .NET Core/5+ - Process terminated. Couldn't find a valid ICU package installed on the system13265정성태2/18/20234422.NET Framework: 2096. .NET Core/5+ - PublishSingleFile 유형에 대한 runtimeconfig.json 설정13264정성태2/17/20235926스크립트: 45. 파이썬 - uvicorn 사용자 정의 Logger 작성13263정성태2/16/20234078개발 환경 구성: 666. 최신 버전의 ilasm.exe/ildasm.exe 사용하는 방법13262정성태2/15/20235139디버깅 기술: 191. dnSpy를 이용한 (소스 코드가 없는) 닷넷 응용 프로그램 디버깅 방법 [1]13261정성태2/15/20234414Windows: 224. Visual Studio - 영문 폰트가 Fullwidth Latin Character로 바뀌는 문제13260정성태2/14/20234215오류 유형: 847. ilasm.exe 컴파일 오류 - error : syntax error at token '-' in ... -inf13259정성태2/14/20234366.NET Framework: 2095. C# - .NET5부터 도입된 CollectionsMarshal13258정성태2/13/20234255오류 유형: 846. .NET Framework 4.8 Developer Pack 설치 실패 - 0x81f4000113257정성태2/13/20234341.NET Framework: 2094. C# - Job에 Process 포함하는 방법 [1]113256정성태2/10/20235180개발 환경 구성: 665. WSL 2의 네트워크 통신 방법 - 두 번째 이야기13255정성태2/10/20234501오류 유형: 845. gihub - windows2022 이미지에서 .NET Framework 4.5.2 미만의 프로젝트에 대한 빌드 오류 1 2 3 4 5 6 7 8 9 10 11 12 13 [14] 15 ...