• VS新功能:智能添加函数标记


    今天,我们官宣 Visual Studio 预览版的两项新功能:

    1) 标记类成员函数为 const。
    2) 标记全局函数为 static。

    标记类成员函数为 const

    如果一个类成员函数不会修改对象的状态,则 Visual Studio 会给出建议,将这个函数标记为 const。此功能标识成员函数执行的操作的情况,这些操作可以使用 const 指针通过对象的公共接口完成。
    我们通过添加使成员函数变成 const 的建议,使编码过程更容易。

    当成员函数可以成为常量时,函数下方会有一个建议(由三个点表示)。将鼠标悬停在它们上会通知你”成员函数可以成为 const”,然后就可以单击灯泡图标使成员函数自动修改为 const 版本。

    >> 请移步至 topomel.com 以查看图片 <<

    创建 const 版本的成员函数时,代码的自动修改将应用于具有成员函数的所有文件。你可以通过选择”预览所有更改的文件”链接来预览所有将会被修改的文件。

    >> 请移步至 topomel.com 以查看图片 <<

    默认情况下,”使成员函数常量”处于打开状态,并设置为建议。可以通过导航到”工具”>”选项”>”文本编辑器”> C/C++ > 代码样式> Linter 来查找和配置该设置。

    >> 请移步至 topomel.com 以查看图片 <<

    标记全局函数为 static

    在 Visual Studio 预览版中,你现在会收到将全局函数标记为静态的提示。

    当遇到头文件中没有前向声明的全局函数时,你将能够毫不费力地使函数静态化。我们已经有一个检测全局函数并建议创建前向声明的功能,现在我们添加了一个选项来将它们标记为静态。

    此功能可顺利与现代 C++ 项目配合使用,因为它不提供将匿名命名空间设置为静态的建议。静态全局函数可在定义它们的翻译单元中访问。

    当全局函数没有前向声明时,它将有一个建议。将鼠标悬停在建议上将显示一个螺丝刀图标,表示该功能可以设为静态。你可以通过单击螺丝刀图标并选择“使此功能静态”来完成该过程。

    >> 请移步至 topomel.com 以查看图片 <<

    可以在 工具 > 选项 > 文本编辑器 > C/C++ > 智能感知中配置此功能的设置。当默认标记设置为建议时,你可以灵活地将严重性级别自定义为无、警告或错误。

    >> 请移步至 topomel.com 以查看图片 <<

    总结

    看来以下两项代码风格已经渐渐成为 C++ 社区的共识:
    1) 将不会修改对象状态的成员函数标记为 const。
    2) 将全局函数标记为 static。
    既然大多数人都这样做,我们小小开发者也跟随就可以了。
    (别整那些新玩意儿)

    最后

    Microsoft Visual C++团队的博客是我非常喜欢的博客之一,里面有很多关于Visual C++的知识和最新开发进展。大浪淘沙,如果你对Visual C++这门古老的技术还是那么感兴趣,则可以经常去他们那(或者我这)逛逛。
    本文来自:《Make Member Function const and Global Function Static in Visual Studio》

  • 相关阅读:
    shell 拒绝恶意连接脚本 centos7.x拒绝恶意连接脚本
    硬件&OS测试解决方案
    Redis使用基础教程
    【linux API分析】module_init
    一篇博客告诉你什么是时间复杂度和空间复杂度(没有基础也能看懂)(这是学习数据结构及算法所必须掌握的基础)
    【C#】【FFmpeg】获取电脑可用音视频设备并输出到下拉列表框
    Node.js在Python中的应用实例解析
    嵌入式算法19---国家商用密码SM算法
    PG数据库内核源码分析——执行计划EXPLAIN
    JavaScript迭代器模式
  • 原文地址:https://blog.csdn.net/mmxida/article/details/132939436