Roslyn 编译平台概述
在Language Feature Status上面看到,其实更新的并不是特别多,为了不会误导看了C# 6.0 功能预览 (一)的园友,现在把官方的更新列表拿了过来,供大家参考
C# 6.0 功能预览 (二)
语言功能实现状态
- 存在: 在以前的版本中已经存在
- 完成: 已经在该版本中实现
- 计划: 预计在该版本中
- 可能: 预计可能在该版本中
- 撤销: 可能不在该版本中
- 没有: 该版本中没有
- N/A: 没有意义
|
功能 |
例子 |
|
|
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 }; |
计划 |
|
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); |
可能 |
|
"\{p.First} \{p.Last} is \{p.Age} years 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 Module M |
存在 |
|
|
Dim x = CInt(Math.Truncate(d)) | |
存在 |
|
|
#Disable Warning BC40008 |
存在 |
|
|
Checked and Unchecked blocks |
Checked : x += 1 : End Checked |
存在 |
在此谢谢读完这篇博客,有什么写的不对的地方请指正。
有帮助就推荐下,有感想就写下留言,不满意也写下留言,有问题及时更正。
学习坚持,坚持学习
Boyce
Roslyn 编译平台概述的更多相关文章
- (二)我的Makefile学习冲动&&编译过程概述
前言 一 年轻的冲动 二 学习曲线 1 Makefile基本语法 2 bash基础 3 world 三 编译过程概述 1 主机预装工具 2 编译host工具 3 编译交叉工具链 4 编译内核模块 5 ...
- C编译过程概述
转自:http://my.oschina.net/apeng/blog/105245 C 编译过程概述 目前Linux下最常用的C语言编译器是GCC(GNU Compiler Collection), ...
- [转贴]C编译过程概述
http://my.oschina.net/apeng/blog/105245 C 编译过程概述 目前Linux下最常用的C语言编译器是GCC(GNU Compiler Collection),它是G ...
- MOOC 编译原理笔记(一):编译原理概述以及程序设计语言的定义
编译原理概述 什么是编译程序 编译程序指:把某一种高级语言程序等价地转换成另一张低级语言程序(如汇编语言或机器代码)的程序. 高级语言程序-翻译->机器语言程序-运行->结果. 其中编译程 ...
- .NET Compiler Platform,一个.NET编译平台
.NET Compiler Platform,一个.NET编译平台 如何利用C# Roslyn编译器写一个简单的代码提示/错误检查? OK, 废话不多说,这些天在写C#代码时突然对于IDE提示有了 ...
- sublime搭建Java编译平台及编码问题
Sublime自带Java编译功能,当时只能编译不能运行,我们做一下小小的修改就可以让sublime一步完成编译运行的功能,实现sublime搭建Java编译平台. 使用Ctrl + B 编译时,所编 ...
- APPCAN学习笔记001---app高速开发AppCan.cn平台概述
1.APPCAN学习笔记---app高速开发AppCan.cn平台概述 1. 平台概述 技术qq交流群:JavaDream:251572072 AppCan.cn开发平台是基于HTML5技术的跨平台移 ...
- Roslyn 入门:使用 .NET Core 版本的 Roslyn 编译并执行跨平台的静态的源码
Roslyn 是微软为 C# 设计的一套分析器,它具有很强的扩展性.以至于我们只需要编写很少量的代码便能够编译并执行我们的代码. 作为 Roslyn 入门篇文章之一,你将可以通过本文学习如何开始编写一 ...
- ARM64平台编译stream、netperf出错解决办法 解决办法:指定编译平台为alpha [root@localhost netperf-2.6.0]# ./configure –build=alpha
ARM64平台编译stream.netperf出错解决办法 http://ilinuxkernel.com/?p=1738 stream编译出错信息: [root@localhost stream]# ...
随机推荐
- javaScript在私有的属性和方法
javaScript并没有什么特别的语法来代表私人.保.或公共的属性和方法,在这一点上与 java或其他语言是不同的.JavaScript大家是共同的所有对象: var myobj={ mypop:1 ...
- Angular报错记录
一 找不到Controller 出现这种错误,一般都是没有找到需要的Controller,需要仔细检查是否所需的Controller已经正确引入
- MP4文件格式具体解释——结构概述
MP4文件格式具体解释(ISO-14496-12/14) Author:Pirate Leo Email:codeevoship@gmail.com 一.基本概念 1. 文件,由很多Box和FullB ...
- 使用Eclipse+Maven+Jetty构建Java Web开发环境(几个教程综合集成2014发行)
工作需要使用Jetty由于web集装箱,得知Eclipse+Maven+Jetty该组合是非常好的,因此,要在网上找了很多教程,但不写或多或少特定的或过时的内容而导致最终的配置失败,易于配置为未来的同 ...
- View Component
View Component 在之前的MVC中,我们经常需要类似一种小部件的功能,通常我们都是使用Partial View来实现,因为MVC中没有类似Web Forms中的WebControl的功能. ...
- JavaScript中获取当前项目的绝对路径
近期在做JavaWeb项目相关的东西,差点儿每天都遇到非常多问题,主要是由于自己对JavaWeb方面的知识不是非常清楚,尽量把自己在项目中遇到的问题都记录下来,方便以后查阅. 在我们的项目中有这种须要 ...
- 优秀的前端project如何制定一个老师--html学习路径
一个好的前端project教师发展,不是一蹴而就,它需要大量的学习和积累. 至于谁刚开始学习的人,如何入门.学习如何选择我的路线,做了各种工具? 1. 学习之前 1.不要着急看一些复杂网页效果的代码 ...
- 栈 & 堆 |--> 内存管理
内存管理: 栈区 [stack]:由编译器自动分配并释放,一般存放函数的参数值,局部变量等 堆区 [heap]:由程序员分配和释放,如果程序员不释放,程序结束时,可能会由操作系统回收 全局区(静态区) ...
- struts2基本介绍
前言 文本 Struts2 Apache SoftWare Foundation Tomcat/Struts1/Struts2/Ibaitas/ MVC框架:Struts1/Struts2/JSF/W ...
- zsh的安装与配置
参考: http://cnbin.github.io/blog/2015/06/01/mac-zsh-an-zhuang-he-shi-yong/ http://www.cnblogs.com/ios ...