重命名符号时,通常无法手动重命名代码中的所有事件。
当GCC报告与此有关的错误时,它只会告诉“(每个未声明的符号仅报告一次)”。
我希望它报告所有事件。可能吗?
最佳答案
我的第一个问题是:为什么?当我更改符号名称时,
使用全局搜索和替换:在我的编辑器(vim)中:
:argdo %s/\<oldname\>/newname/g
(这会将
oldname
中的所有实例更改为newname
,位于编辑器的参数列表,但前提是
oldname
是完整的符号;即
someoldname
不会更改。)如果名称是全局名称,那么我将在shell中使用
sed
:for f in $(find root -name '*.hh' -o -name '*.cc')
do
sed 's/\<oldname\>/newname/g' $f > tmp && mv tmp $x
done
如果您使用Windows,我相信VS具有类似的可能性,
全局搜索并替换解决方案中的所有源文件。
您不会编译找到您知道的错误;通常是
首先更容易修复它们。