c++ - 如何让 GCC 报告每次出现未声明的符号?

标签 c++ c gcc

当我重命名一个符号时,我通常无法手动重命名我的代码中出现的所有事件。

当 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 也有类似的可能性,有一个 全局搜索并替换解决方案中的所有源文件。

您不会通过编译来查找已知存在的错误;通常是 更容易先修复它们。

关于c++ - 如何让 GCC 报告每次出现未声明的符号?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9126627/

相关文章:

c++ - 在 Mac OS Catalina 中编译 hadoop 原生库。错误 : unknown type name 'constexpr' . 别名声明是 C++11 扩展

c++ - GCC 和 MSVC 之间的 digits10 差异

c - 如何正确实现 float 乘法(软件FP)

c - 错误 C2099 : initializer is not a constant & warning C4013: 'gamma' undefined; assuming extern returning int

python - 如何将 Anaconda Python 默认编译器更改为较新版本的 GCC?

c - 如何查看 #include 包含的 header 的位置?

函数模板的 C++ 问题(未找到实例)

c++ - Rand() % 14 只生成值 6 或 13

c++ - C++ 设计中的属性处理

c++ - Ncurses 不检测击键