⑴ 如何忽略VC 6的所有編譯警告
你可以不去管那些信息。
當然,你可以 在 編譯開關里 選 /w 就能 略去 所有編譯警告
/w -- disable all warnings
例如:
CL /w cre.c
⑵ 關於linux編譯模塊,總是出現很多的warning,看著比較煩,請問輸入哪個命令可以不顯示他們呢
gcc或者g++可以用-w參數來去掉所有警告,但是最好還是通過修改源代碼來去掉警告
⑶ 請教gcc編譯下的幾個警告該怎麼去除
C 語言源程序中的錯誤分為幾類,其中有:必須要修改的錯誤(例如:語法錯誤),這類錯誤如果不進行修改,那麼源程序就無法編譯通過和運行;另外還有就是:警告錯誤(例如:對某個變數沒有賦初值就使用它),該類錯誤就是:編譯器能夠讓你的源程序通過,但是你在運行源程序時,得到的運行結果卻未必是正確的(例如:編寫一個累加器的程序,如果不對總和進行清零,那麼每運行一次,結果可能就會是隨機的)。所以說,如果 gcc 編譯器下提出了警告錯誤,你就必須要仔細閱讀源程序,找出其相對應的BUG來,這樣才能夠確保你的程序運行結果是正確的。
⑷ 如何消除間接呼叫 Method 在 Android Studio 中的編譯警告
如果有使用過 DI (Dependency Injection) Framework 像是 butterknife,或是 Bus 一類的 Framework 像是 Otto 或 EventBus,一定會撰寫出 Method 是沒有被自己開發的源代碼直接呼叫的。這時在 Android Studio 的即時編譯檢查就會出現警告:
Method 『...』 is never used
就像這篇文章里提到,警告的出現會形成一定程度上的困擾,最好是能夠消除掉,畢竟這是一個無法避免的寫法,但又不應該被看成是個問題。
照「調整 Android Studio 編譯檢查規則」中的方法把檢查規則整個取消掉,是個一勞永逸的方法。但是也把其可能的錯誤也抑制掉了,徒增程序質量上的風險,並非上策。
另外一個可行的選項是在方法上宣告 SuppressWarnings 的 Annotation,像是 @SuppressWarnings("unused")、@SuppressWarnings({"UnusedDeclaration"})、@SuppressWarnings({"UnusedParameters」})。跟前一個方案一樣,應該顯示的警告也同時被遮蔽掉了,不是最佳的方式。
所幸 Android Studio 也不是沒有提供對策,在有問題的源代碼上按下「alt+enter」,會跳出 Menu 並可以選擇 Suppress for methods annotated by 『...』 項目。以 greenrobot 的 EventBus 為例,所有以 org.greenrobot.eventbus.Subscribe 為 Annotation 的 Method 都不會再顯示警告,所以問題順利地解決了。
以上的解決方法應該已經很多人都知道了,只是還有一個衍生的問題。如果使用的 Framework 提供的 Annotation 不只一個,還是得要一個一個地重覆相同的動作,不能一次搞定嗎?
這時可以開啟「調整 Android Studio 編譯檢查規則」中提到的 Inspections 選項畫面,切換到「java->Declaration rendancy->Unused declaration」項目。畫面右方的 Options Frame 最下方有一個【Configure annotations...】的按鈕,點下去之後會再跳出另一個小視窗。接著就可以在視窗的最下方新增【Add Annotation Class】或【Add Annotations Pattern】,前一個是新增單一個 Class,另一個則是使用萬用字元來增加一整組的 Class。
以上說明的這些資訊都被存在 .idea/misc.xml 的文件中,打開後會看到類似以下的內容:
<component name="EntryPointsManager">
<entry_points version="2.0" />
<list size="1">
<item index="0" class="java.lang.String" itemvalue="org.greenrobot.eventbus.Subscribe" />
</list>
</component>
如果你有莫名的控制欲,想要凡事都掌握在手中,可以直接修改文件的內容,也會達到一樣的效果。