将* .c / * .h项目(编译为C)转换为* .cpp / * .hpp
问题:将基于.c / .h的项目(通过makefile强制编译为C)转换为基于.cpp / .hpp的项目的最佳方法是什么?
显然,这是一个三步过程.第一种方法是将* .c重命名为* .cpp;第二种方法是将* .h最后重命名为* .hpp.我要抓住的是第三步 – 以某种方式构建文件/命名/命名列表(即myfile.c),然后遍历每个受影响的文件并用旧文件名替换旧文件名的每个实例. new(myfile.c – > myfile.cpp).显然必须这样做,所以源文件仍然可以找到他们需要的一切. 有问题的源代码包含大约2700个单独的源文件. 我这样做的原因主要是因为我将所述软件包移植到Mac OS X,这涉及到Xcode.事情变得血腥凌乱,试图准确地跟踪C,C和相关标题是什么(然后覆盖编译器进行C编译).如果所有C都是* .cpp(关联标题是* .hpp)会更简单,因为那时我可以根据文件扩展名将Xcode保留在默认编译器设置中,所有内容都可以在没有任何花哨干预的情况下工作结束. 我可能还应该注意到,我确切地知道需要转换哪些文件,因为如果我重写Xcode以编译为C,它们已经正确编译并且以理智的方式编译.这不是问题 – 我的问题是试图弄清楚如何批量重命名然后运行所有文件并更新#includes. 先感谢您! 解决方法
你不需要弄乱标题. filename.h是C头的一个非常好的名称.
如果你没有使用旧的makefile,而是创建一个新的XCode项目,那么你只有一步: >将* .c重命名为* .cpp 如果makefile是正确编写的(使用规则模式而不是特定的每文件规则),那么也不应该进行任何更改. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |