有没有办法禁用全局变量
Is there a way to disable globals?
我有一个相当长的遗留代码函数。有没有办法检查它是否正在使用任何全局变量或禁用对任何全局变量的访问?
我会检查生成的对象文件中的数据符号: nm -po file.o | grep ' D '
编译器生成几个符号,您可能想要检查几个其他类型的符号,例如 B
和小写版本。
在 Linux 上,像往常一样编译可执行文件,然后运行:
nm your-program | egrep " (b|B) "
这将列出 BSS 中的符号。
相关文章:
- 有没有什么方法可以使用一个函数中定义的常量变量,也可以由c++中同一程序中的其他函数使用
- 有没有一种通用的方法来实现不变量
- 有没有将变量名称转换为双指针的简短方法?
- 为什么我的全局变量似乎没有变化?
- 有没有办法在同名类 (c++) 中为对象分配一个指针变量
- 有没有办法访问复数类C++私有成员变量?
- 有没有办法检查发送到变量的值是否是正确的类型,而它已经在该变量下?
- 有没有办法强制C++编译器将变量存储在寄存器中?
- 有没有办法避免全局数组
- C++中有没有一种方法可以通过指定列表中的每个成员变量来构造对象
- 有没有办法"QByteArray"变量数据直接放入变量"int"而无需强制转换?
- 有没有办法在 c++ 中制作类型变量?
- 有没有更优雅的方法在构造函数中声明默认变量?
- 将静态全局变量声明为内联有什么意义吗?
- Eclipse 编译器有没有办法将变量中的地址字段显示为整数值?
- 重新定义要在函数中使用的静态变量 - 有没有更好的方法?
- 有没有办法在两个共享对象之间使用相同的全局变量?
- 类中的静态成员变量和C++中的全局变量有什么区别?
- 有没有办法避免具有实现QSort的全局变量
- 有没有办法禁用全局变量