自动将C代码的转换元素转换为C ++

时间:2009-08-27 21:36:41

标签: c++ c casting

是否有一些工具可以自动转换以下c样式代码

A *a = b;

A *a = (A*)b;

谢谢, 詹姆斯

1 个答案:

答案 0 :(得分:2)

假设这是为了消除编译器错误,我可能会自己写一个。在源上运行编译器,并将错误消息重定向到文件。过滤掉它抱怨类型的错误。例如,在gcc中,它们将如下所示:

a.cc:3: error: invalid conversion from ‘int’ to ‘int*’

这为您提供了所需的一切:文件和行号,以及您需要投射到的类型(即int*)。在行中找到可能的位置以插入强制转换(即在=字符之后或在return语句之后),然后重试。跟踪您已编辑的行,并跳过它们进行人工干预。