C#6 새로운 기능

3536 단어 ASP.NET
1. 자동 속성 강화
public bool ITuest { get; set; } = true;
 public string FirstName { get; } = "aehyok";
2. 람 표현식을 함수체로
 public int Move(int x, int y) => x + y;
3. 정적 클래스 using static 참조
 public double ReturnNum() =>  Acos(3);
4. 빈값 판단null
int? length = customers?.Count;  int first = (int)customers?[0];
5. 문자열 포함 값
  public string MakeStr()         {             string firstName = "ligen";             string lastName = "wanli";             return string.Format("one is/{firstName},two is/{lastName}");         }
6.nameof 표현식nameof expressionspublic static void AddCustomer(Customer customer) {      if (customer == null )      {          throw new ArgumentNullException( nameof(customer) );      } }
7. Index initializers
var numer = new Dictionary {[4] = "s33" }; 8 try {      res = await Resource.OpenAsync(…); // You could do this. … } catch (ResourceException e) {      await Resource.LogAsync(res, e); // Now you can do this … } finally {      if (res != null )          await res.CloseAsync(); // … and this. }
9. catch와finally의 await - Await in catch and finally Blocks
C#5.0에서 await 키워드는catch와finnaly 블록에 나타날 수 없습니다.6.0에서는
            try
            {
                res = await Resource.OpenAsync(…); // You could do this. … 
            }
            catch (ResourceException e)
            {
                await Resource.LogAsync(res, e); // Now you can do this … 
            } finally
            {
                if (res != null)
                    await res.CloseAsync(); // … and this. 
            } 

10 Parameterless struct ctors 매개 변수 없는 구조체 구조 함수
public FractionStruct( int a, int b) { A = a; B = b; }
public FractionStruct() : this(0, 1) { }
구조체는 사용자 정의의 무변수 구조 함수를 제공할 수 있다.
new FractionStruct()
default(FractionStruct)
new는 무변수 구조 함수를 호출합니다.
default는 무변수 구조 함수를 호출하지 않습니다.11. Null propagation Null 전파
v?.A
v?["B"]
v?.Tostring () 대상이 null일 때 속성, 인덱스, 방법 등을 호출하지 않고 표현식이 null로 되돌아옵니다. 이것은 Swift의 사용법과 비슷합니다.

좋은 웹페이지 즐겨찾기