首页

特性完成:VS2019 v16.8全面支持C++协程  

一段往事 回首有关C++协程的往事,真是犹如一段十分漫长的旅程。 早在2013年,我们就官宣了一个有关”可恢复函数”的早期预览版本,接下来在2014年,我们添加了/await开关并提交了C++标准化建议的初始版本。2015年,我们提交了修订版本。后来,通过Visual Studio 2017和Visual Studio 2019,我们都在持续地跟踪有关协程TS(Techni...

官宣:MSVC新加入C11和C17标准  

官宣 我们很高兴的宣布,从Visual Studio 2019 v16.8 Preview 3开始,C11和C17这两个C语言版本将加入到MSVC编译器工具集(toolset)。 多年以来,Visual Studio仅仅是因为C++的需要才对C进行有限度的支持。现在,事情有转变了:我们在编译器中添加了一个基于token的规范化预处理器,借助于两项新加入的编译器开关:/std:c11和/std:c1...

进度更新:VS2019 v16.8中对C++20模块的支持  

蝎子 距离上一次我们分享C++20模块有关的更新,已经有一阵子了。在过去的一段时间,整个开发团队,保活工具集,项目系统和IDE团队都在努力工作,致力于为C++开发者提供超一流的C++20模块体验,那今天我们就来讲讲我们都做了些什么。坐稳了吗? 都有哪些新东西? /std:c++latest隐式包含C++模块 由于MSVC已经开始实现C++模块标准,工具集会在任何时候都强制使用/experiment...

一年一度的CppCon它又来了

微软C++团队为今年的CppCon 2020准备了一组精彩的演讲阵容。我们中的大多数还将在我们的虚拟会议厅与大家见面。来呗,和我们讲讲你对我们的主题演讲或者产品有什么想要提出的问题,另外,我们还将对Visual Studio和Visual Studio Code做一些Announcements。 目前我们在做一次有关C++生态系统的调查问卷,参与者有机会获取微软模拟飞行2020(每天送出一份),看...

C++ Core Check:安全编码准则更新  

要性能,更要安全 Rust和C++是两门比较流行的系统级开发语言。多年来,业界对C++的关注主要是在性能上,我们也不断地听到来自客户和安全研究员的反馈:他们希望C++应该在语言层面有更多的安全编码准则。 在安全编程这个方面来说,C++经常被认为落后于Rust。 借鉴于Rust在安全编码方面的特性,我们在Visual Studio 2019 v16.7的C++ Core Check中新增了四条编码安...

Visual Studio 2019新特性:位操作

新特性 C++ 20标准中添加了两个用来进行位操作的库: 1) 位翻转和计数 2) 两项操作的整数幂 大部分新添加的函数模板都是比较简单的数值计算函数,以及一个对应现代CPU里的一些通用指令的简单映射。 在Visual Studio 2019 v16.8 Preview 2中,我们实现了它们。这篇文章主要是简单介绍我们的实现和一些你可以使用得到的针对处理器级别的优化。 所有的函数都已经启用了con...

C++工程编译时间分析  

导读 来自Mercury Steam公司的工程师Carlos Fraguas最近分享了一篇博文。他向我们描述了如何通过C++ Build Insights SDK来向vcperf中添加新的/timetrace选项,另外还描述了他是如何使用这套SDK来制作工具来满足他的开发团队的需求的。今天就让我们来观摩观摩。 背景 大家好,我的名字叫Carlos Fraguas,来自Mercury Steam公司...

新的编译开关:生成源码依赖性报告  

新的编译开关 C++20对生态系统的需求比以往任何时候都要多。 随着C++20 Modules特性的出现,编译器需要与项目系统紧密合作,以便为构建依赖关系收集提供丰富的信息,并使迭代构建更快地用于内循环开发。 编译器和项目团队已经确认了这种新的关系,并共同合作,我们在编译器工具集中新增了一个编译开关,这个开关可以为构建系统提供有用的信息:/sourceDependencies。 源码依赖报告 新的...

官宣:AddressSanitizer新增x64支持  

官宣 去年10月,我们官宣了MSVC工具集中AddressSanitizer x86版本的支持。 主要的特性包括在Visual Studio中显示有关AddressSanitizer的错误报告,高亮问题代码等。 AddressSanitizer最初由Google设计并开发,主要为了改进程序的内存访问安全性,它能识别可能发生的访问违规问题。通过在可能出问题的代码中高亮突出显示,开发者可以快速识别潜在...

官宣:Visual Studio对Codespaces的支持  

官宣对Codespaces的支持 在Microsoft Build大会上,你可能看过我们关于C++ Codespaces demo的演讲。Codespaces在一些方面可以提升C++开发体验,包括将工程编译和其他一些计算密集型任务迁移到云端。在那次的大会上,我们已经和你们中的一些人交谈过,现在,我们想让更多的人体验到有关Codespaces支持的私有预览版(Private Preview)。 当前...