C#_Func<in T, TResult>()

CJB_ny·2022년 6월 6일
0

C#

목록 보기
1/24
post-thumbnail

https://velog.io/write?id=6d36bf0b-031f-45f8-bae8-d46d7808bd2b

유니티 2d 프로젝트의 SearchAI 부분에서

Object의 Find 메소드를 오버라이딩 하는 부분에서

조금더 효율적인 Find메소드를 오버라이딩 하다가 인자로 Func를 공부함.

이 부분에서 GameObject를 받아 boolean을 내뱉는 다고 생각을 일단 하면됨.

근데 Func 이해할려면 delegate도 잘 이해해야함.

https://docs.microsoft.com/en-us/dotnet/csharp/programming-guide/delegates/

0. 이거 블로그 꼭 읽어야한다!

https://kwangyulseo.com/2016/10/16/ienumerator-ienumerable%EC%9D%98-%EC%9D%98%EB%AF%B8/

1. Func<>

https://docs.microsoft.com/en-us/dotnet/api/system.func-2?view=net-6.0

다음 예제에서는 Func<T,TResult> 대리자를 선언하고 사용하는 방법을 보여줍니다. 이 예제에서는 Func<T,TResult> 변수 를 선언하고 문자열의 문자를 대문자로 변환하는 람다 식을 할당합니다. 이 메서드를 캡슐화하는 대리자는 이후에 Enumerable.Select 메서드에 전달되어 문자열 배열의 문자열을 대문자로 변경합니다

2. 블로그 정리 글

https://developer-talk.tistory.com/208

3. 블로그 정리글

https://reqres.tistory.com/20

Action 정리 ~~~> ThreadPool의 Task와 이어짐

action은 뭐 이렇게 사용을 하는데

Line1을 보면 파라미터 없는 Action을 사용한 것입니다. action이라는 대리자에 익명함수를 정의 한 것입니다.
Line2는 string 파라미터를 갖는 Action입니다. Line3은 string과 int형 파라미터를 갖는 Action 입니다.
Line 5 ~ 7은 함수 사용하듯이 사용합니다

Func의 경우 return값이 무조건 있어야한다.

Func은 리턴 값이 꼭 있어야 합니다. 리턴 타입은 가장 마지막에 적어주면 됩니다

=> ThreadPool의 Task와 이어짐

profile
https://cjbworld.tistory.com/ <- 이사중

0개의 댓글