IOS 怱略警告

2021-08-18 11:38:10 字數 1317 閱讀 3936

ios開發過程中,偶爾會碰到一些編譯器警告,一般來說這些警告很具有參考價值 ,需要處理以增強**的健壯性。但有時,遇到不同版本的ios方法棄用警告、或dynamic resolution/blinding會遇到沒有定義方法實現警告、未使用的變數等等,如果能夠確定該警告不會影響到程式的正常執行,則可以手動告訴編譯器,區域性加入或關閉。

clang提供了我們自己加入警告或者暫時關閉警告的辦法。

clang常用的忽略警告型別:

#pragma clang diagnostic push

//1、使用未宣告方法

#pragma clang diagnostic ignored "-wundeclared-selector" 

//2、忽略在arc 環境下performselector產生的 leaks 的警告

//#pragma clang diagnostic ignored "-warc-performselector-leaks"

//3、宣告的變數未使用 

#pragma clang diagnostic ignored   "-wunused-variable"

// 4、廢棄掉的方法    

#pragma clang diagnostic ignored  "-wdeprecated-declarations"

//5、 方法定義未實現 

#pragma clang diagnostic ignored  "-wincomplete-implementation"

//6、引數格式不匹配 

#pragma clang diagnostic ignored  "-wformat"

//7、不會執行的**

#pragma clang diagnostic ignored  "-wunreachable-code"

//8、不相容的指標型別

#pragma clang diagnostic ignored  "-wincompatible-pointer-types"

//9、迴圈引用

#pragma clang diagnostic ignored  "-warc-retain-cycles"

//10、記憶體洩露

#pragma clang diagnostic ignored   "-warc-performselector-leaks"

#pragma clang diagnostic pop 

當然,也可以在pch等具有大範圍作用域的標頭檔案中包含:  

#pragma clang diagnostic ignored "警告名稱"

如果剔除了push與pop 則後面所有的**都具有強制消除警告作用

iOS記憶體警告

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!我們都知道在移動裝置上很多資源都是比較緊缺的,尤其時記憶體,通常都比較小,iphone4也才只有512mb。而且ios4.0以後還支援了多工,這個問題就更加突出了。因此我們在平時設計程式的時候要注意管理好記憶體,減少不必要的開銷,謹防洩露。由於寫的...

iOS警告收集

1.出現 unuer 解決 pragma clang diagnostic push pragma clang diagnostic ignored wunused variable 這裡是會報警告的 weakself pragma clang diagnostic pop 2.too many p...

iOS 消除警告總結

1 method x in protocol not implemented 這個警告是說未實現介面中的 x方法,實現這個方法即可。2 expression result unused 是呼叫了非空返回值的方法,可在呼叫方法前加void可消除警告。3 incompatible integer to ...