C\#4.0 새로운 기능 dynamic,선택 가능 한 매개 변수,명명 매개 변수 에 대한 상세 한 소개
2710 단어 dynamic선택 가능 한 매개 변수명명 매개 변수
var t = new Object();
t.Abc = ‘something';
t.Value = 243;
현재 이 js 동적 언어의 특성 은 우리 도 c\#에서 사용 할 수 있다.전 제 는 하나의 변 수 를 Expando Object 형식 으로 설명 하 는 것 이다.다음 과 같은 예:
static void Main(string[] args)
{
dynamic t = new ExpandoObject();
t.Abc = "abc";
t.Value = 10000;
Console.WriteLine("t's abc = {0},t's value = {1}", t.Abc, t.Value);
Console.ReadLine();
}
C\#4.0 에 네 임 스페이스 System.Dynamic 을 추가 하여 이 응용 에 대한 지 지 를 실현 했다.이런 용법 의 의미 가 어디 에 있 는 지 아직 잘 모 르 겠 고 c\#동적 언어 로 과도 하 는 탐색 이기 도 하 다.2.범 형 자동 변환 은 C\#4.0 이전에 아래 의 코드 를 컴 파일 할 수 없습니다
IEnumerable<object> objs = new List<string> {
"I'm 0","I'am 1","I'am 2"
};
.그러나 c\#4.0 에서 이러한 성명 은 허용 되 지만 범 형 인터페이스 에 만 국한 되 며 범 형 유형의 유사 한 방법 은 허용 되 지 않 습 니 다.다음 코드 는 컴 파일 오류
List<object> objList = new List<string> {
"I'am 0","I'am 1","I'am 2"
};
가 있 습 니 다.이런 형식 은 고정 매개 변수의 몇 가지 방법 을 다시 싣 는 데 매우 유용 하 다.다음 호출:
static void DoSomething(int notOptionalArg,string arg1 = "default Arg1", string arg2 = "default arg2") {
Console.WriteLine("arg1 = {0},arg2 = {1}",arg1,arg2);
}
만약 에 제 가 선택 할 수 있 는 매개 변수 와 같은 방법 으로 서명 하지 않 는 방법 이 있다 면 c\#어떻게 처리 할 지 생각 하 실 수 있 습 니 다.아래 코드
static void Main(string[] args)
{
DoSomething(1);
DoSomething(1, " ");
DoSomething(1, " ", " ");
Console.ReadLine();
}
를 보 겠 습 니 다.저 는 DoSomething 이라는 방법 에 두 개의 매개 변수 가 있 지만 선택 할 수 있 는 매개 변수 가 없습니다.실험 은 DoSomething(1."arg")는 선택 할 수 있 는 인자 가 없 는 방법 을 우선 실행 합 니 다.4.방법 매개 변수 이름 매개 변수 이름 매개 변 수 는 호출 방법 에서 매개 변수 이름 을 지정 하여 매개 변수 에 값 을 부여 할 수 있 습 니 다.이 경우 매개 변수의 순 서 를 무시 할 수 있 습 니 다.다음 과 같은 방법 으로 설명 한다.
static void DoSomething(int notOpArg, string arg)
{
Console.WriteLine("arg1 = {0}", arg);
}
우 리 는 위 에서 설명 한 방법
static void DoSomething(int height, int width, string openerName, string scroll) {
Console.WriteLine("height = {0},width = {1},openerName = {2}, scroll = {3}",height,width,openerName,scroll);
}
을 이렇게 호출 할 수 있다.이것 은 문법 사탕 이지 만 방법 적 매개 변수 가 많은 상황 에서 의미 가 있 고 코드 의 가 독성 을 증가 할 수 있다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
API의 데이터가 포함된 Nuxt 2 동적 사이트맵일부 데이터 세트/api에서 사이트맵을 동적으로 구축하려는 경우 이것이 적합합니다. nuxt 프로젝트에서 익스프레스 API를 활성화했는지 여부에 관계없이 이 쉬운 3단계 프로세스를 통해 원하는 결과를 얻을 수 있습니...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.