>  기사  >  백엔드 개발  >  C#에서 기본값은 무엇을 의미하나요?

C#에서 기본값은 무엇을 의미하나요?

清浅
清浅원래의
2019-05-14 13:34:3310826검색

C#의 기본값은 일반적으로 스위치 문이나 일반 코드에서 사용됩니다. 스위치 문에서는 대소문자가 아닌 일치를 처리하는 기본 상황입니다. 제네릭에서 default를 사용하는 경우에는 두 가지 상황이 있습니다. 참조 유형에서는 제네릭 유형이 null로 초기화되고, 값 유형에서는 제네릭 유형이 0

C#에서 기본값은 무엇을 의미하나요?

default 키워드를 switch 문이나 제네릭에서 사용할 수 있습니다. 코드 사용.

switch 문: 기본 레이블을 지정합니다.

일반 코드: 유형 매개변수의 기본값을 지정합니다. 참조 유형의 경우 Null, 값 유형의 경우 0

switch 문

switch 문에서 스위치 값과 일치하는 Case 표현식이 없으면 선택적 기본 레이블 뒤에 오는 문으로 제어가 전달됩니다. 기본 레이블이 없으면 제어가 스위치 외부로 전달됩니다.

switch (key)
{   case 1:
       Console.WriteLine("1");       break;   case 2:
       Console.WriteLine("2");       break;   default:
       Console.WriteLine("Sorry, no one matches!");       break;
}

Generic Code

generic 클래스 및 generic 메서드에서

T가 참조 유형인지 값 유형인지 미리 알 수 없는 경우 매개변수화된 유형 T에 기본값을 할당하는 방법.

T가 값 유형인 경우 숫자 값이든 구조이든 상관없습니다.

매개변수화된 유형 T의 변수 t가 있는 경우 t = null 문은 T가 참조 유형인 경우에만 유효합니다. t = 0 문은 T가 구조체가 아닌 숫자 유형인 경우에만 정상적으로 사용할 수 있습니다. 해결책은 참조 유형의 경우 null을 반환하고 숫자 유형의 경우 0을 반환하는 default 키워드를 사용하는 것입니다. 구조의 경우 이 키워드는 구조가 값 유형인지 참조 유형인지에 따라 0 또는 비어 있는 것으로 초기화된 각 구조 멤버를 반환합니다.

public class GenericClass<T>
{
   public T Function(arg)
    {
        T temp = default(T);
       if (arg != null) temp = arg.Favs;
        return temp;
    }
   //...
}

注意:不仅可以在定义泛型类或者泛型方法的代码中可以使用default关键字,甚至在任何地方都可以使用该关键字
如下面代码。
static void Main(string[] args)
{
   Console.WriteLine(default(int));
   Console.WriteLine(default(string));
   Console.WriteLine(default(Color));
}

출력:

行1: 0
行2:       
行3: Color [Empty]


위 내용은 C#에서 기본값은 무엇을 의미하나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
이전 기사:C#을 배우는 방법다음 기사:C#을 배우는 방법