最近公司在搞合规,不许用sourceinsight了。
大家纷纷改用sublime、vscode、vim等编辑器。
以前用的sourceinsight3.5只支持gb2312,而sublime、vscode、vim这些编辑器默认都是以utf-8来显示的。
所以以前的源文件中的中文注释就会出现乱码。
虽然sublime、vscode、vim都可以通过修改配置或者安装插件的方法支持gb2312,但是很明显utf-8更通用也更主流。
于是催生了将gb2312转为utf-8的想法,说干就干,改完编译通过,入库。
结果VC编译单元测试时,全部出错,错得一塌糊涂,#if 0的代码都被编译到了,很是离谱。。。
网上查了一下,原来是Visual Studio对utf-8的支持有问题。
对于最新的Visual Studio 14.0,微软官方提供了utf插件,但是Visual Studio 9.0貌似不能用。
于是继续搜索解决方案。。。
有人提到了注释的问题,所有注释都要使用/* */,不能使用//。
并且/* 中文 */注释中,“中文”两边的空格不能少。
记得以前编程规范要求/* */注释内容两头应该加空格,不记得是哪份编程规范了,印象里好像是华为的吧。
当时以为只是为了易于阅读,原来还有这个原因。。。
全部修改完成后,再在VC下编译单元测试,果然就没有那些稀奇古怪的问题了。
大微软,你果然是牛(cuó)啊。真是不得不让我更加膜(B)拜(S)你了!!!