c\#익명 유형 깊이 이해

2440 단어 c#익명유형
1.익명 류 는 무엇 입 니까?
익명 류 는 이름 이 없 는 류 다.익명 클래스 는 인용 할 수 없습니다.다시 만 들 때 new 구문 으로 만 설명 할 수 있 습 니 다.
2.익명 류 의 장점 과 응용 장면;
1.익명 형식 은 하나의 읽 기 전용 속성 을 하나의 대상 에 봉인 할 수 있 는 편리 한 방법 을 제공 합 니 다.또한 정 의 된 유형 을 먼저 표시 할 필요 가 없습니다.
2.유형 명 은 컴 파일 러 에 의 해 생 성 되 고 소스 코드 급 에서 사용 할 수 없습니다.모든 속성의 유형 은 컴 파일 러 에 의 해 추정 된다.
3.new 연산 자 와 대상 의 초기 값 으로 익명 형식 을 만 들 수 있 습 니 다.
4.익명 형식 은 보통 검색 식 의 Select 자구 에 사용 되 며,원 시퀀스 의 모든 대상 의 속성 부분 집합(Linq 에서 많이 사용)을 되 돌려 줍 니 다.
3.익명 류 의 응용; 

//    
var news = new {title="   ",day="2019-4-10",author="   "};
showInfo(news);  
//
static void ShowInfo<T>(T news)
{
  dynamic d = news;
  Console.WriteLine(d.title);
  Console.WriteLine(d.day);
  Console.WriteLine(d.author);
}
4.var 암시 적 유형;
암시 적 유형 var,성명 변 수 는 데이터 형식 을 지정 하지 않 아 도 됩 니 다.컴 파일 러 는 할당 에 따라 그 유형 을 판단 하 는 메커니즘 입 니 다.그 장점 은 var 라 는 암시 적 유형 을 통 해 개발 자의 개발 효율 을 향상 시 킬 수 있 고 대상 의 유형 을 고려 하지 않 을 때 가 많 습 니 다.
5.var 의 사용 규칙;
1.var 유형 은 컴 파 일 러 가 초기 값 의 유형 에 따라 구체 적 인 유형 을 추정한다.
2.var 유형의 부분 변 수 는 초기 값 을 부여 해 야 합 니 다.
3.null 을 암시 적 형식의 부분 변수 에 할당 할 수 없습니다.
4.var 형식 변수의 정 의 는 방법 이나 속성 get,set 접근 기 에 있어 야 합 니 다.
5.var 가 방법 을 만 들 수 없 는 매개 변수;
6.반환 값 형식 으로 할 수 없습니다.
7.문장 에서 변 수 를 한 번 만 설명 할 수 있 고 성명 후 유형 을 변경 할 수 없습니다.
6.익명 방법;
익명 방법 은 C\#2.0 이 도입 한 새로운 기능 입 니 다.개발 자 내 연(inline)이 자신의 함수 코드 를 설명 하고 의뢰 함수(delegate function)를 사용 하지 않 아 도 됩 니 다.
익명 방법의 응용 장면:
1.임시 방법 이 필요 합 니 다.이 방법 은 사용 횟수 가 매우 적 습 니 다.
2.이 방법의 코드 는 매우 짧 고 심지어 방법 설명 보다 짧 은 상황 에서 사용 할 수 있 습 니 다.
7.익명 방법의 실례:

/*         */MySumHandler m1 = new MySumHandler(Sum);
m1(2,3);
MySumHandler m2 = Sum;
m2(3,4);


//    ,C#2.0
MySumHandler m3 = delegate(int i, int j){Console.WriteLine("{0}+{1}={2}",i,j,(i+j));};
m3(5,6);

//lambda,   C#3.0
MySumHandler m4 = (i,j)=>{Console.WriteLine("{0}+{1}={2}",i,j,(i+j));};
8.Func 와 Action 의 사용:
Func와 Action는.NET 의 내장 의뢰 입 니 다.Func는 반환 값 을 요구 합 니 다.Action는 반환 값 이 없 음 을 요구 합 니 다.
사용 시 Func중 괄호 의 마지막 유형 은 반환 값 입 니 다.
Action,T1 에서 T16 까지 는 매개 변수 입 니 다.
이상 은 c\#익명 유형 에 대한 상세 한 내용 입 니 다.C\#익명 유형 에 대한 자 료 는 다른 관련 글 을 주목 하 세 요!

좋은 웹페이지 즐겨찾기