C&C++   发布时间:2022-04-03  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了将* .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.

先感谢您!
-Keven小费

解决方法

你不需要弄乱标题. filename.h是C头的一个非常好的名称.

如果你没有使用旧的makefile,而是创建一个新的XCode项目,那么你只有一步:

>将* .c重命名为* .cpp

如果makefile是正确编写的(使用规则模式而不是特定的每文件规则),那么也不应该进行任何更改.

大佬总结

以上是大佬教程为你收集整理的将* .c / * .h项目(编译为C)转换为* .cpp / * .hpp全部内容,希望文章能够帮你解决将* .c / * .h项目(编译为C)转换为* .cpp / * .hpp所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。