• Roslyn 编译平台概述


    Language Feature Status上面看到,其实更新的并不是特别多,为了不会误导看了C# 6.0 功能预览 (一)的园友,现在把官方的更新列表拿了过来,供大家参考

    C# 6.0 功能预览 (二)

     

    语言功能实现状态

    • 存在: 在以前的版本中已经存在
    • 完成: 已经在该版本中实现
    • 计划: 预计在该版本中
    • 可能: 预计可能在该版本中
    • 撤销: 可能不在该版本中
    • 没有: 该版本中没有
    • N/A: 没有意义

    功能

    例子

    C#

    Primary constructors

    class Point(int x, int y) { … }

    完成

    Auto-property initializers

    public int X { get; set; } = x;

    完成

    Getter-only auto-properties

    public int Y { get; } = y;

    完成

    Using static members

    using System.Console; … Write(4);

    完成

    Dictionary initializer

    new JObject { ["x"] = 3, ["y"] = 7 }

    完成

    Indexed member initializer

    new JObject { $x = 3, $y = 7 }

    撤销

    Indexed member access

    c.$name = c.$first + " " + c.$last;

    撤销

    Declaration expressions

    int.TryParse(s, out var x);

    完成

    Await in catch/finally

    try … catch { await … } finally { await … }

    完成

    Exception filters

    catch(E e) if (e.Count > 5) { … }

    完成

    Typecase

    Select Case o : Case s As String : …

    没有

    Guarded cases

    Select Case i : Case Is > 0 When i Mod 2 = 0

    没有

    Partial modules

    Partial Module M1

    N/A

    Partial interfaces

    Partial Interface I1

    存在

    Multiline string literals

    "Hello<newline>World"

    存在

    Year-first date literals

    Dim d = #2014-04-03#

    N/A

    Binary literals

    0b00000100

    计划

    Digit separators

    0xEF_FF_00_A0

    计划

    Line continuation comments

    Dim addrs = From c in Customers ' comment

    N/A

    TypeOf IsNot

    If TypeOf x IsNot Customer Then …

    N/A

    Expression-bodied members

    public double Dist => Sqrt(X * X + Y * Y);

    计划

    Event initializers

    new Customer { Notify += MyHandler };

    计划

    Null propagation

    customer?.Orders?[5]?.$price

    计划

    Semicolon operator

    (var x = Foo(); Write(x); x * x)

    可能

    Private protected

    private protected string GetId() { … }

    计划

    Params IEnumerable

    int Avg(params IEnumerable<int> numbers) { … }

    计划

    Constructor Inference

    new Tuple(3, "three", true);

    可能

    String interpolation

    "{p.First} {p.Lastis {p.Ageyears old."

    可能

    TryCast for nullable

    Dim x = TryCast(u, Integer?)

    存在

    Delegate combination with +

    d1 += d2

    存在

    Implicit implementation

    Class C : Implicitly Implements I

    存在

    NameOf operator

    string s = nameof(Console.Write);

    计划

    Strict modules

    Strict Module M

    存在

    Faster CInt

    Dim x = CInt(Math.Truncate(d)) |

    存在

    #pragma

    #Disable Warning BC40008

    存在

    Checked and Unchecked blocks

    Checked : x += 1 : End Checked

    存在




    在此谢谢读完这篇博客,有什么写的不对的地方请指正。
    有帮助就推荐下,有感想就写下留言,不满意也写下留言,有问题及时更正。

    学习坚持,坚持学习

    Boyce
     
    分类: .NET基础
    标签: .NET基础
  • 相关阅读:
    sql server执行存储过程慢的问题
    Windows service
    moss网站模板的一些问题
    ACM题解报告——HD1012
    ACM题解报告——HD1496
    ACM题解报告——HD1253
    ACM题解报告——进制数取于余
    ACM题解报告——HD1058
    ACM题解报告——HD1548
    ACM解题报告HD1015
  • 原文地址:https://www.cnblogs.com/Leo_wl/p/3715185.html
Copyright © 2020-2023  润新知