jac*_*hab 5 c c++ regex refactoring
经常遇到建议不要在C/C++标识符中使用前导和双下划线后,我决定一劳永逸地修复所有源代码.我现在需要做的是转换_Identifier为Identifier_.
我应该使用专门的工具来完成这项正常表达式的任务吗?在后一种情况下,匹配C/C++标识符的模式是什么?
小智 13
虽然我是经常指出带有前导下划线的名字可能会被保留的人之一,但我强烈建议您不要这样做,除非您遇到名称引起的问题.进行这种全局更改将使您的版本控制系统不如通过引起各种虚假差异而变得有用.此外,还有可能创建重复的名称.
此外,还有许多下划线前缀名称完全有效.跟着感觉走立刻__LINE__和__FILE__等,并可以通过您的具体实施提供了非标准功能的全部名称.过滤掉这些名称将远非微不足道(我会说几乎不可能),当然简单的Perl或sed脚本是不够的.
因此,我鼓励您在对代码进行其他更改时逐个文件地更改名称.更改编程标准以避免使用前导下划线名称并根据标准编写新代码.