Visual Studio 2019 v16.10有什么新功能?
我们很高兴地宣布Visual Studio 2019 v16.10 GA 和 v16.11 preview 1发布。此版本使我们的主题“开发者生产力和便利性”普遍适用于 Visual Studio 用户!我们添加了c++ 20特性、优化的Git集成、分析工具,以及许多提高开发效率的特性。
下载最新的Visual Studio版本以尝试16.10中的新特性。一如既往,我们希望您通过我们的开发者社区提供反馈和互动。
安装visual studio 2019 v16.10
我们的编译器和 STL 现在功能完备,适用于最新可用的C++20 标准!16.10带来了一些备受期待的特性:日历、时区和 。这些特性都可以在/std:c++latest开关下使用。不过/std:c++20开关还不可用,因为一些特性预期将在缺陷报告(ISO c++20 bug修复)中以ABI不兼容的方式进行修正(更多细节请参阅Microsoft/STL Issue #1814)。
是一种新的基于 fmtlib 的文本格式工具。 它为 iostreams 和 printf 系列提供了一种快速且安全的替代方案:
日历和时区是对现有工具的扩展。它们提供了一种类型安全和时区感知的方式,来表示和操控日期和时间。
std::chrono::year_month_day world_bee_day = May/20d/2021y std::format("Buzz buzz on %F!”, world_bee_day);此外,我们还改进了模块、范围和概念的智能感知体验。“转到定义”既适用于模块本身,也适用于从模块中导入的定义。对于编译器来说,编译器进入范围是出了名的困难,但是智能感知现在可以为你做这件事。另外,定义的概念名称会自动补全。
现在,除了x64之外, x86和ARM64也支持 LLVM OpenMP 运行时。通过/openmp:llvm开关来指向它。
如果你想使用c++ 20-style的协程,但目标是c++ 11或c++ 14,你现在可以使用/await:strict开关来获得想要的行为。
我们改进了协程的调试和可视化。特别是,std::coroutine_handle的可视化现在显示了原始的协程函数名和签名以及当前挂起点。
如果你正在使用我们的CMake支持,那么你现在可以使用CMakePresets来指定配置,而不是使用cmakessetting .json。这种格式在Visual Studio、Visual Studio Code和任何其他支持这种新标准的工具之间是一致的。
Git生产力状态栏有一个新的分支选择器,允许您筛选本地和远程分支,并从右键单击快捷菜单执行常规操作。
现在,当您单独选择一个分支时,状态栏中的分支选择器以及Git Changes窗口将迁到本地或远程分支。
从状态栏存储库选择器中筛选和切换本地Git存储库。右键单击快捷菜单可以从列表中删除项目。
在状态栏点击未push的提交按钮,并在Git菜单同步命令,同步(pull和push) 你的分支到远程。
即使没有传入的提交,也可以从Git Repository窗口历史窗格中获取和pull。从状态栏或键盘快捷键Ctrl+0+Y访问这些部分。
在Git Repository窗口中选择一个提交,可以查看它的详细信息和文件更改的比较,而不必导航到其他窗口。选择两个提交并右键单击从而在同一个窗口中比较它们。将细节弹出到它们自己的窗口中全屏显示,从而深入了解更改。
查看文件中删除和插入的次数,并更改比较的布局。