iOS經常使用的忽略警告方法

本身參與的一個iOS App 在一次版本升級中規定 最低支持到iOS9.0系統,若是程序中繼續使用蘋果提供的一些在高版本要廢棄的API就會有有警告,不容許集成代碼。 好比stringByAddingPercentEscapesUsingEncoding:方法在 iOS 9.0中被廢棄了。
那若是不想改(改動帶來的風險太大)又不想有警告,該怎麼作呢?
瞭解到能夠使用#pragma 聲明來防止編譯器報警告。spa

#pragma clang diagnostic push
#pragma clang diagnostic ignored "相關命令"
    // 你本身的代碼
#pragma clang diagnostic pop
複製代碼

針對不一樣的場景,相關命令不同,經常使用的有以下五種:指針

  • 未使用變量警告:-Wunused-variable
  • 方法棄用警告:-Wdeprecated-declarations
  • 循環引用警告:-Warc-retain-cycles
  • 不兼容指針類型警告:-Wincompatible-pointer-types
  • 內存泄漏警告:-Warc-performSelector-leaks

好比忽略方法棄用警告code

#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wdeprecated-declarations"
    // 調了棄用API的代碼
#pragma clang diagnostic pop
複製代碼
相關文章
相關標籤/搜索