2009-12-14 171 views
1

如何用一個我可以用Grep運行的程序來計算C++中全局變量的數量?全局變量計數

+7

您可能會在這裏找到一些指針:http://en.wikipedia.org/wiki/Golden_hammer – Zano 2009-12-14 23:51:23

+0

將所有全局變量命名爲「wart」:global_this,global_that,global_the_other。這也將幫助你識別和修復訪問它們的代碼;-) – 2009-12-14 23:52:46

+1

什麼是「你可以用grep運行的程序」呢? – MSalters 2009-12-15 10:56:14

回答

6

一個更好的方法是讓你的編譯器打印一個映射文件。大多數地圖文件列出了所有的全局變量及其位置。如果幸運的話,地圖文件甚至可以指示全局變量屬於哪個翻譯單元。

4

Grep不懂語法或語法;它在線上運行。我不認爲這是可能的。

下面是一些代碼,我工作的一個片段:

int count; 

你能告訴我,如果它是全球性的?

+2

更有趣:'int foo(bar);'。 – MSalters 2009-12-15 10:57:31

0

您可能會在編譯工件中列出某些內容,如列出文件或目標文件。

+0

或者地圖文件! – 2009-12-15 00:06:35

0

你有沒有考慮過使用類似cflow的東西?你可以獲得GNU的cflow版本,輸出,然後可以greppable?

希望這會有所幫助。