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]# ...
随机推荐
- CentOS 7安装配置Apache HTTP Server
原文 CentOS 7安装配置Apache HTTP Server RPM安装httpd # yum -yinstall httpd //安装httpd会自动安装一下依赖包: apr apr-ut ...
- JavaEE(3) - RMI服务器和客户端
1. 开发RMI服务器 Net Beans创建java project: (qs) (Server.java) package server; import java.rmi.*; //远程接口必须集 ...
- Android FM学习中的模块 FM启动过程
最近的研究FM模,FM是一家值我正在学习模块.什么可以从上层中可以看出. 上层是FM按钮的操作和界面显示,因此调用到FM来实现广播收听的功能. 看看Fm启动流程:例如以下图: 先进入FMRadio.j ...
- SSH框架总结(帧分析+环境结构+示例源代码下载)
首先,SSH不是一个框架.而是多个框架(struts+spring+hibernate)的集成,是眼下较流行的一种Web应用程序开源集成框架,用于构建灵活.易于扩展的多层Web应用程序. 集成SSH框 ...
- do...while(0)神奇
1. do...while(0)消除goto语句. 通常,假设在一个函数中開始要分配一些资源.然后在中途运行过程中假设遇到错误则退出函数,当然,退出前先释放资源,我们的代码可能是这样: version ...
- View Component
View Component 在之前的MVC中,我们经常需要类似一种小部件的功能,通常我们都是使用Partial View来实现,因为MVC中没有类似Web Forms中的WebControl的功能. ...
- 【设计模式】Abstract Factory模式
抽象工厂模式是工厂方法模式的进一步强化.当工厂函数仅仅须要产生一种类型的产品(全部产品都继承自同一抽象基类)时,使用工厂方法模式就可以. 可是.当用户程序须要创建多种类型的产品,而这些产品又有一定的内 ...
- java语言内部类和匿名内部类
内部类 在类定义也有类,在该类上的内部被称为一个内部类. 访问功能: 1,内部类可以直接访问外部类成员,它包含私有成员 2,外部类需要访问内部类的成员将需要建立一流的内部对象. 一般用于类的设计. 分 ...
- jq入门--选择器
选择器是JQuery一大特色,所有的DOM操作.事件操作.Ajax操作都离不开选择器.熟练掌握JQuery的选择器,可以节省很多代码,很大程序上简化我们的脚本编程工作. JQuery的选择器很类似于样 ...
- 新服务器部署sqlserver之前的准备
当你有一个新的服务器需要部署的时候,如果没有部署过的经验很可能会走很多误区,并且给以后的维护工作加大难度,我在这就把我部署服务器的一些经验跟大家分享一下. 1.登陆服务器以后先将物理盘按照64k为分配 ...