pch

#define kWeakSelf(weakSelf) __weak __typeof(self)weakSelf = self;xcode

#ifndef __OPTIMIZE__#define NSLog(...) NSLog(__VA_ARGS__)#else# define NSLog(...) {}#endifapp

 

#ifdef DEBUG函數

#define NSLog(...) NSLog(__VA_ARGS__)oop

#elsespa

#define NSLog(...).net

 

#endif指針

#define SCREEN_FRAME ([UIScreen mainScreen].applicationFrame)code

#define SCREEN_WIDTH ([UIScreen mainScreen].bounds.size.width)orm

#define SCREEN_HEIGHT ([UIScreen mainScreen].bounds.size.height)blog

 
  1. //已知的一些編譯警告類型  
  2. -Wincompatible-pointer-types 指針類型不匹配  
  3. -Wincomplete-implementation 沒有實現已聲明的方法  
  4. -Wprotocol 沒有實現協議的方法  
  5. -Wimplicit-function-declaration 還沒有聲明的函數(一般指c函數)  
  6. -Warc-performSelector-leaks 使用performSelector可能會出現泄漏(該警告在xcode4.3.1中沒出現過,網上流傳說4.2使用performselector:withObject: 就會獲得該警告)  
  7. -Wdeprecated-declarations 使用了不推薦使用的方法(如[UILabel setFont:(UIFont*)])  
  8. -Wunused-variable 含有沒有被使用的變量  
///
 
///////
  1. #pragma clang diagnostic push  
  2. #pragma clang diagnostic ignored "-Wincompatible-pointer-types"  
  3.     //含警告的代碼,以下,btn爲UIButton類型的指針  
  4.     UIView *view = btn;  
  5. #pragma clang diagnostic pop 
 
 


「-Wincompatible-pointer-types」爲警告類型

clang爲編譯器名,這裏也能夠替換爲GCC

#pragma clang diagnostic ignored後面只能跟一個忽略警告類型

若是須要同時忽略多種警告,須要這樣寫:

 

[cpp]  view plain copy
 
  1. #pragma clang diagnostic push  
  2. #pragma clang diagnostic ignored "-Wincompatible-pointer-types"  
  3. #pragma clang diagnostic ignored "-Wincomplete-implementation"  
  4.     //含警告的代碼,以下,btn爲UIButton類型的指針  
  5.     UIView *view = btn;  
  6. #pragma clang diagnostic pop
相關文章
相關標籤/搜索