引言:

在iOS开发过程中, 我们可能会碰到一些系统方法弃用, weak、循环引用、不能执行之类的警告。 有代码洁癖的孩子们很想消除他们, 今天就让我们来一次Fuck 警告!!

首先学会基本的语句:

  1. #pragma clang diagnostic push
  2. #pragma clang diagnostic ignored "-Wdeprecated-declarations"

中间这里写出现警告的代码

  1. #pragma clang diagnostic pop

这样就消除了方法弃用的警告!

也即使用如下:

  1. #pragma clang diagnostic push
  2. #pragma clang diagnostic ignored "-Wdeprecated-declarations"
  3.  
  4. //这里写出现警告的代码就能实现去除警告(代码写在这中间)
  5.  
  6. #pragma clang diagnostic pop

同理, 大家可以在下边搜索到对应的警告, 这样 就可以把前边的字符串填入上边的ignored的后边, 然后括住你的代码, 就OK了

源网址

  1. Semantic Warnings
  2. Warning Message
  3. -WCFString-literal input conversion stopped due to an input byte that does not belong to the input codeset UTF-
  4. -WNSObject-attribute __attribute ((NSObject)) may be put on a typedef only, attribute is ignored
  5. -Wabstract-vbase-init initializer for virtual base class % of abstract class % will never be used
  6. -Waddress-of-array-temporary pointer is initialized by a temporary array, which will be destroyed at the end of the full-expression
  7. -Warc-maybe-repeated-use-of-weak "weak %select{variable|property|implicit property|instance variable}0 %1 may be accessed multiple times in this %select{function|method|block|lambda}2 and may be unpredictably set to nil assign to a strong variable to keep the object alive
  8. -Warc-non-pod-memaccess %select{destination for|source of} this % call is a pointer to ownership-qualified type %
  9. -Warc-performSelector-leaks performSelector may cause a leak because its selector is unknown
  10. -Warc-repeated-use-of-weak "weak %select{variable|property|implicit property|instance variable}0 %1 is accessed multiple times in this %select{function|method|block|lambda}2 but may be unpredictably set to nil assign to a strong variable to keep the object alive
  11. -Warc-retain-cycles capturing % strongly in this block is likely to lead to a retain cycle
  12. -Warc-unsafe-retained-assign assigning retained object to unsafe property object will be released after assignment
  13. -Warc-unsafe-retained-assign assigning %select{array literal|dictionary literal|numeric literal|boxed expression|should not happen|block literal} to a weak %select{property|variable} object will be released after assignment
  14. -Warc-unsafe-retained-assign assigning retained object to %select{weak|unsafe_unretained} %select{property|variable} object will be released after assignment
  15. -Warray-bounds array index % is past the end of the array (which contains % element%s2)
  16. -Warray-bounds array index % is before the beginning of the array
  17. -Warray-bounds 'static' has no effect on zero-length arrays
  18. -Warray-bounds array argument is too small contains % elements, callee requires at least %
  19. -Warray-bounds-pointer-arithmetic the pointer incremented by % refers past the end of the array (that contains % element%s2)
  20. -Warray-bounds-pointer-arithmetic the pointer decremented by % refers before the beginning of the array
  21. -Wassign-enum integer constant not in range of enumerated type %
  22. -Watomic-property-with-user-defined-accessor writable atomic property % cannot pair a synthesized %select{getter|setter} with a user defined %select{getter|setter}
  23. -Wattributes unknown attribute % ignored
  24. -Wauto-var-id 'auto' deduced as 'id' in declaration of %
  25. -Wavailability unknown platform % in availability macro
  26. -Wavailability overriding method %select{introduced after|deprecated before|obsoleted before} overridden method on % (% vs. %)
  27. -Wavailability availability does not match previous declaration
  28. -Wavailability overriding method cannot be unavailable on % when its overridden method is available
  29. -Wavailability feature cannot be %select{introduced|deprecated|obsoleted} in % version % before it was %select{introduced|deprecated|obsoleted} in version % attribute ignored
  30. -Wbad-function-cast cast from function call of type % to non-matching type %
  31. -Wbitfield-constant-conversion implicit truncation from % to bitfield changes value from % to %
  32. -Wbitwise-op-parentheses '&' within '|'
  33. -Wbool-conversion "initialization of pointer of type %0 to null from a constant boolean " "expression
  34. -Wbridge-cast % cannot bridge to %
  35. -Wbridge-cast % bridges to %, not %
  36. -Wbuiltin-requires-header declaration of built-in function '%0' requires inclusion of the header stdio.h
  37. -Wbuiltin-requires-header declaration of built-in function '%0' requires inclusion of the header setjmp.h
  38. -Wbuiltin-requires-header declaration of built-in function '%0' requires inclusion of the header ucontext.h
  39. -Wc++-compat %select{|empty }%select{struct|union} has size in C, %select{size |non-zero size} in C++
  40. -Wc++-compat explicit instantiation cannot be 'inline'
  41. -Wc++-compat explicit instantiation of % must occur at global scope
  42. -Wc++-compat explicit instantiation of % not in a namespace enclosing %
  43. -Wc++-compat explicit instantiation of %q0 must occur in namespace %
  44. -Wc++-narrowing constant expression evaluates to % which cannot be narrowed to type % in C++
  45. -Wc++-narrowing type % cannot be narrowed to % in initializer list in C++
  46. -Wc++-narrowing non-constant-expression cannot be narrowed from type % to % in initializer list in C++
  47. -Wc++-c++-compat type definition in a constexpr %select{function|constructor} is incompatible with C++ standards before C++1y
  48. -Wc++-c++-compat use of this statement in a constexpr %select{function|constructor} is incompatible with C++ standards before C++1y
  49. -Wc++-c++-compat init-captures.def warn_cxx11_compat_init_capture : Warning "initialized lambda captures are incompatible with C++ standards " "before C++1y
  50. -Wc++-c++-compat variable declaration in a constexpr %select{function|constructor} is incompatible with C++ standards before C++1y
  51. -Wc++-c++-compat constexpr function with no return statements is incompatible with C++ standards before C++1y
  52. -Wc++-c++-compat multiple return statements in constexpr function is incompatible with C++ standards before C++1y
  53. -Wc++-c++-compat variable templates are incompatible with C++ standards before C++1y
  54. -Wc++-compat substitution failure due to access control is incompatible with C++
  55. -Wc++-compat %select{anonymous struct|union} member % with a non-trivial %select{constructor|copy constructor|move constructor|copy assignment operator|move assignment operator|destructor} is incompatible with C++
  56. -Wc++-compat enumeration type in nested name specifier is incompatible with C++
  57. -Wc++-compat static data member % in union is incompatible with C++
  58. -Wc++-compat default template arguments for a function template are incompatible with C++
  59. -Wc++-compat scalar initialized from empty initializer list is incompatible with C++
  60. -Wc++-compat befriending % without '%select{struct|interface|union|class|enum}0' keyword is incompatible with C++
  61. -Wc++-compat use of null pointer as non-type template argument is incompatible with C++
  62. -Wc++-compat friend declaration naming a member of the declaring class is incompatible with C++
  63. -Wc++-compat non-class friend type % is incompatible with C++
  64. -Wc++-compat befriending enumeration type % is incompatible with C++
  65. -Wc++-compat use of non-static data member % in an unevaluated context is incompatible with C++
  66. -Wc++-compat friend function % would be implicitly redefined in C++
  67. -Wc++-compat %select{class template|class template partial|variable template|variable template partial|function template|member function|static data member|member class|member enumeration} specialization of % outside namespace % is incompatible with C++
  68. -Wc++-compat reference initialized from initializer list is incompatible with C++
  69. -Wc++-compat redundant parentheses surrounding address non-type template argument are incompatible with C++
  70. -Wc++-compat initialization of initializer_list object is incompatible with C++
  71. -Wc++-compat use of 'template' keyword outside of a template is incompatible with C++
  72. -Wc++-compat non-type template argument referring to %select{function|object} % with internal linkage is incompatible with C++
  73. -Wc++-compat use of 'typename' outside of a template is incompatible with C++
  74. -Wc++-compat passing object of trivial but non-POD type % through variadic %select{function|block|method|constructor} is incompatible with C++
  75. -Wc++-compat goto would jump into protected scope in C++
  76. -Wc++-compat constructor call from initializer list is incompatible with C++
  77. -Wc++-compat 'auto' type specifier is incompatible with C++
  78. -Wc++-compat delegating constructors are incompatible with C++
  79. -Wc++-compat 'constexpr' specifier is incompatible with C++
  80. -Wc++-compat inheriting constructors are incompatible with C++
  81. -Wc++-compat explicit conversion functions are incompatible with C++
  82. -Wc++-compat switch case would be in a protected scope in C++
  83. -Wc++-compat '%0' type specifier is incompatible with C++
  84. -Wc++-compat indirect goto might cross protected scopes in C++
  85. -Wc++-compat-pedantic cast between pointer-to-function and pointer-to-object is incompatible with C++
  86. -Wc++-compat-pedantic implicit conversion from array size expression of type % to %select{integral|enumeration} type % is incompatible with C++
  87. -Wcast-align cast from % to % increases required alignment from % to %
  88. -Wcast-of-sel-type cast of type % to % is deprecated use sel_getName instead
  89. -Wchar-subscripts array subscript is of type 'char'
  90. -Wconditional-uninitialized variable % may be uninitialized when %select{used here|captured by block}
  91. -Wconstant-logical-operand use of logical '%0' with constant operand
  92. -Wconstexpr-not-const 'constexpr' non-static member function will not be implicitly 'const' in C++1y add 'const' to avoid a change in behavior
  93. -Wconsumed state of variable '%0' must match at the entry and exit of loop
  94. -Wconsumed parameter '%0' not in expected state when the function returns: expected '%1', observed '%2'
  95. -Wconsumed argument not in expected state expected '%0', observed '%1'
  96. -Wconsumed invalid invocation of method '%0' on a temporary object while it is in the '%1' state
  97. -Wconsumed return state set for an unconsumable type '%0'
  98. -Wconsumed consumed analysis attribute is attached to member of class '%0' which isn't marked as consumable
  99. -Wconsumed invalid invocation of method '%0' on object '%1' while it is in the '%2' state
  100. -Wconsumed return value not in expected state expected '%0', observed '%1'
  101. -Wconversion implicit conversion discards imaginary component: % to %
  102. -Wconversion non-type template argument with value '%0' converted to '%1' for unsigned template parameter of type %
  103. -Wconversion implicit conversion loses floating-point precision: % to %
  104. -Wconversion implicit conversion loses integer precision: % to %
  105. -Wconversion non-type template argument value '%0' truncated to '%1' for template parameter of type %
  106. -Wconversion implicit conversion turns vector to scalar: % to %
  107. -Wconversion implicit conversion turns floating-point number into integer: % to %
  108. -Wcovered-switch-default default label in switch which covers all enumeration values
  109. -Wcustom-atomic-properties atomic by default property % has a user defined %select{getter|setter} (property should be marked 'atomic' if this is intended)
  110. -Wdangling-field initializing pointer member % with the stack address of parameter %
  111. -Wdangling-field binding reference %select{|subobject of }1member % to a temporary value
  112. -Wdangling-field binding reference member % to stack allocated parameter %
  113. -Wdangling-initializer-list array backing the initializer list will be destroyed at the end of %select{the full-expression|the constructor}
  114. -Wdelete-incomplete deleting pointer to incomplete type % may cause undefined behavior
  115. -Wdelete-non-virtual-dtor delete called on % that is abstract but has non-virtual destructor
  116. -Wdelete-non-virtual-dtor delete called on % that has virtual functions but non-virtual destructor
  117. -Wdeprecated access declarations are deprecated use using declarations instead
  118. -Wdeprecated definition of implicit copy %select{constructor|assignment operator} for % is deprecated because it has a user-declared %select{copy %select{assignment operator|constructor}|destructor}
  119. -Wdeprecated dynamic exception specifications are deprecated
  120. -Wdeprecated-increment-bool incrementing expression of type bool is deprecated
  121. -Wdeprecated-objc-isa-usage assignment to Objective-C's isa is deprecated in favor of object_setClass()
  122. -Wdeprecated-objc-isa-usage direct access to Objective-C's isa is deprecated in favor of object_getClass()
  123. -Wdeprecated-objc-pointer-introspection bitmasking for introspection of Objective-C object pointers is strongly discouraged
  124. -Wdeprecated-objc-pointer-introspection-performSelector warn_objc_pointer_masking.Text
  125. -Wdeprecated-writable-strings dummy warning to enable -fconst-strings
  126. -Wdirect-ivar-access instance variable % is being directly accessed
  127. -Wdistributed-object-modifiers conflicting distributed object modifiers on return type in implementation of %
  128. -Wdistributed-object-modifiers conflicting distributed object modifiers on parameter type in implementation of %
  129. -Wdivision-by-zero division by zero is undefined
  130. -Wdivision-by-zero remainder by zero is undefined
  131. -Wdocumentation parameter '%0' not found in the function declaration
  132. -Wdocumentation not a Doxygen trailing comment
  133. -Wduplicate-enum element % has been implicitly assigned % which another element has been assigned
  134. -Wduplicate-method-match multiple declarations of method % found and ignored
  135. -Wdynamic-class-memaccess %select{destination for|source of|first operand of|second operand of} this % call is a pointer to dynamic class % vtable pointer will be %select{overwritten|copied|moved|compared}
  136. -Wempty-body switch statement has empty body
  137. -Wempty-body for loop has empty body
  138. -Wempty-body if statement has empty body
  139. -Wempty-body range-based for loop has empty body
  140. -Wempty-body while loop has empty body
  141. -Wenum-compare comparison of two values with different enumeration types%diff{ ($ and $)|},
  142. -Wenum-conversion implicit conversion from enumeration type % to different enumeration type %
  143. -Wexit-time-destructors declaration requires an exit-time destructor
  144. -Wexplicit-ownership-type method parameter of type % with no explicit ownership
  145. -Wextern-c-compat %select{|empty }%select{struct|union} has size in C, %select{size |non-zero size} in C++
  146. -Wextern-initializer 'extern' variable has an initializer
  147. -Wfloat-equal comparing floating point with == or != is unsafe
  148. -Wformat "data argument position '%0' exceeds the number of data arguments (%1)
  149. -Wformat position arguments in format strings start counting at (not )
  150. -Wformat invalid position specified for %select{field width|field precision}
  151. -Wformat cannot mix positional and non-positional arguments in format string
  152. -Wformat values of type '%0' should not be used as format arguments add an explicit cast to % instead
  153. -Wformat format specifies type % but the argument has type %
  154. -Wformat zero field width in scanf format string is unused
  155. -Wformat no closing ']' for '%%[' in scanf format string
  156. -Wformat format string should not be a wide string
  157. -Wformat format string contains '\\0' within the string body
  158. -Wformat '%select{*|.*}0' specified field %select{width|precision} is missing a matching 'int' argument
  159. -Wformat field %select{width|precision} should have type %, but argument has type %
  160. -Wformat %select{field width|precision} used with '%1' conversion specifier, resulting in undefined behavior
  161. -Wformat format string missing
  162. -Wformat incomplete format specifier
  163. -Wformat flag '%0' results in undefined behavior with '%1' conversion specifier
  164. -Wformat flag '%0' is ignored when flag '%1' is present
  165. -Wformat more '%%' conversions than data arguments
  166. -Wformat length modifier '%0' results in undefined behavior or no effect with '%1' conversion specifier
  167. -Wformat-extra-args data argument not used by format string
  168. -Wformat-invalid-specifier invalid conversion specifier '%0'
  169. -Wformat-nonliteral format string is not a string literal
  170. -Wformat-security format string is not a string literal (potentially insecure)
  171. -Wformat-zero-length format string is empty
  172. -Wgcc-compat GCC does not allow the 'cleanup' attribute argument to be anything other than a simple identifier
  173. -Wglobal-constructors declaration requires a global constructor
  174. -Wglobal-constructors declaration requires a global destructor
  175. -Wgnu-conditional-omitted-operand use of GNU ?: conditional expression extension, omitting middle operand
  176. -Wheader-hygiene using namespace directive in global context in header
  177. -Widiomatic-parentheses using the result of an assignment as a condition without parentheses
  178. -Wignored-attributes 'malloc' attribute only applies to functions returning a pointer type
  179. -Wignored-attributes % attribute only applies to %select{functions|unions|variables and functions|functions and methods|parameters|functions, methods and blocks|functions, methods, and classes|functions, methods, and parameters|classes|variables|methods|variables, functions and labels|fields and global variables|structs|variables, functions and tag types|thread-local variables|variables and fields|variables, data members and tag types|types and namespaces|Objective-C interfaces}
  180. -Wignored-attributes '%0' attribute cannot be specified on a definition
  181. -Wignored-attributes __weak attribute cannot be specified on an automatic variable when ARC is not enabled
  182. -Wignored-attributes Objective-C GC does not allow weak variables on the stack
  183. -Wignored-attributes __weak attribute cannot be specified on a field declaration
  184. -Wignored-attributes attribute % cannot be applied to %select{functions|Objective-C method} without return value
  185. -Wignored-attributes attribute declaration must precede definition
  186. -Wignored-attributes attribute % is ignored, place it after \"%select{class|struct|union|interface|enum}1\" to apply attribute to type declaration
  187. -Wignored-attributes __declspec attribute % is not supported
  188. -Wignored-attributes attribute % ignored, because it cannot be applied to a type
  189. -Wignored-attributes attribute % after definition is ignored
  190. -Wignored-attributes % attribute ignored
  191. -Wignored-attributes 'sentinel' attribute only supported for variadic %select{functions|blocks}
  192. -Wignored-attributes 'sentinel' attribute requires named arguments
  193. -Wignored-attributes '%0' only applies to %select{function|pointer|Objective-C object or block pointer} types type here is %
  194. -Wignored-attributes 'nonnull' attribute applied to function with no pointer arguments
  195. -Wignored-attributes % attribute can only be applied to instance variables or properties
  196. -Wignored-attributes ibaction attribute can only be applied to Objective-C instance methods
  197. -Wignored-attributes % calling convention ignored on variadic function
  198. -Wignored-attributes % only applies to variables with static storage duration and functions
  199. -Wignored-attributes % attribute argument not supported: %
  200. -Wignored-attributes #pramga ms_struct can not be used with dynamic classes or structures
  201. -Wignored-attributes transparent union definition must contain at least one field transparent_union attribute ignored
  202. -Wignored-attributes first field of a transparent union cannot have %select{floating point|vector} type % transparent_union attribute ignored
  203. -Wignored-attributes 'gnu_inline' attribute requires function to be marked 'inline', attribute ignored
  204. -Wignored-attributes calling convention % ignored for this target
  205. -Wignored-attributes transparent_union attribute can only be applied to a union definition attribute ignored
  206. -Wignored-attributes %select{alignment|size} of field % (% bits) does not match the %select{alignment|size} of the first field in transparent union transparent_union attribute ignored
  207. -Wignored-attributes attribute % is already applied
  208. -Wignored-attributes % attribute ignored for field of type %
  209. -Wignored-attributes % attribute ignored when parsing type
  210. -Wignored-attributes % attribute only applies to %select{functions|methods|properties} that return %select{an Objective-C object|a pointer|a non-retainable pointer}
  211. -Wignored-attributes % attribute only applies to %select{Objective-C object|pointer} parameters
  212. -Wignored-attributes attribute % is already applied with different parameters
  213. -Wignored-attributes unknown visibility %
  214. -Wignored-qualifiers "'%0' type qualifier%s1 on return type %plural{1:has|:have}1 no effect
  215. -Wignored-qualifiers ARC %select{unused|__unsafe_unretained|__strong|__weak|__autoreleasing} lifetime qualifier on return type is ignored
  216. -Wimplicit-atomic-properties property is assumed atomic by default
  217. -Wimplicit-atomic-properties property is assumed atomic when auto-synthesizing the property
  218. -Wimplicit-fallthrough fallthrough annotation in unreachable code
  219. -Wimplicit-fallthrough unannotated fall-through between switch labels
  220. -Wimplicit-fallthrough fallthrough annotation does not directly precede switch label
  221. -Wimplicit-function-declaration implicit declaration of function %
  222. -Wimplicit-function-declaration use of unknown builtin %
  223. -Wimplicit-retain-self "block implicitly retains 'self' explicitly mention 'self' to indicate this is intended behavior
  224. -Wincompatible-library-redeclaration incompatible redeclaration of library function %
  225. -Wincomplete-implementation method definition for % not found
  226. -Winherited-variadic-ctor inheriting constructor does not inherit ellipsis
  227. -Winitializer-overrides subobject initialization overrides initialization of other fields within its enclosing subobject
  228. -Winitializer-overrides initializer overrides prior initialization of this subobject
  229. -Wint-to-pointer-cast cast to % from smaller integer type %
  230. -Wint-to-void-pointer-cast cast to % from smaller integer type %
  231. -Winvalid-iboutlet IBOutletCollection properties should be copy/strong and not assign
  232. -Winvalid-iboutlet %select{instance variable|property} with % attribute must be an object type (invalid %)
  233. -Winvalid-noreturn function % declared 'noreturn' should not return
  234. -Winvalid-noreturn function declared 'noreturn' should not return
  235. -Wlarge-by-value-copy return value of % is a large (% bytes) pass-by-value object pass it by reference instead ?
  236. -Wlarge-by-value-copy % is a large (% bytes) pass-by-value argument pass it by reference instead ?
  237. -Wliteral-conversion implicit conversion from % to % changes value from % to %
  238. -Wliteral-range magnitude of floating-point constant too large for type % maximum is %
  239. -Wliteral-range magnitude of floating-point constant too small for type % minimum is %
  240. -Wlogical-not-parentheses logical not is only applied to the left hand side of this comparison
  241. -Wlogical-op-parentheses '&&' within '||'
  242. -Wloop-analysis variable%select{s| %|s % and %|s %, %, and %|s %, %, %, and %} used in loop condition not modified in loop body
  243. -Wloop-analysis variable % is %select{decremented|incremented} both in the loop header and in the loop body
  244. -Wmethod-signatures conflicting parameter types in implementation of %: % vs %
  245. -Wmethod-signatures conflicting return type in implementation of %: % vs %
  246. -Wmicrosoft extra qualification on member %
  247. -Wmismatched-method-attributes attributes on method implementation and its declaration must match
  248. -Wmismatched-parameter-types conflicting parameter types in implementation of %%diff{: $ vs $|},
  249. -Wmismatched-return-types conflicting return type in implementation of %%diff{: $ vs $|},
  250. -Wmissing-braces suggest braces around initialization of subobject
  251. -Wmissing-declarations '%0' ignored on this declaration
  252. -Wmissing-field-initializers missing field '%0' initializer
  253. -Wmissing-method-return-type method has no return type specified defaults to 'id'
  254. -Wmissing-noreturn %select{function|method} % could be declared with attribute 'noreturn'
  255. -Wmissing-noreturn block could be declared with attribute 'noreturn'
  256. -Wmissing-prototypes no previous prototype for function %
  257. -Wmissing-variable-declarations no previous extern declaration for non-static variable %
  258. -Wmultiple-move-vbase defaulted move assignment operator of % will move assign virtual base class % multiple times
  259. -Wnested-anon-types anonymous types declared in an anonymous union/struct are an extension
  260. -Wno-typedef-redefinition Redefinition of typedef '%0' is a C11 feature
  261. -Wnon-literal-null-conversion "expression which evaluates to zero treated as a null pointer constant of " "type %0
  262. -Wnon-pod-varargs second argument to 'va_arg' is of ARC ownership-qualified type %
  263. -Wnon-pod-varargs cannot pass %select{non-POD|non-trivial} object of type % to variadic %select{function|block|method|constructor} expected type from format string was %
  264. -Wnon-pod-varargs second argument to 'va_arg' is of non-POD type %
  265. -Wnon-pod-varargs cannot pass object of %select{non-POD|non-trivial} type % through variadic %select{function|block|method|constructor} call will abort at runtime
  266. -Wnon-virtual-dtor % has virtual functions but non-virtual destructor
  267. -Wnonnull null passed to a callee which requires a non-null argument
  268. -Wnull-arithmetic use of NULL in arithmetic operation
  269. -Wnull-arithmetic comparison between NULL and non-pointer %select{(% and NULL)|(NULL and %)}
  270. -Wnull-dereference indirection of non-volatile null pointer will be deleted, not trap
  271. -Wobjc-autosynthesis-property-ivar-name-match autosynthesized property % will use %select{|synthesized} instance variable %, not existing instance variable %
  272. -Wobjc-forward-class-redefinition redefinition of forward class % of a typedef name of an object type is ignored
  273. -Wobjc-interface-ivars declaration of instance variables in the interface is deprecated
  274. -Wobjc-literal-compare direct comparison of %select{an array literal|a dictionary literal|a numeric literal|a boxed expression|} has undefined behavior
  275. -Wobjc-literal-missing-atsign string literal must be prefixed by '@'
  276. -Wobjc-method-access instance method %objcinstance0 not found (return type defaults to 'id') did you mean %objcinstance2?
  277. -Wobjc-method-access class method %objcclass0 not found (return type defaults to 'id') did you mean %objcclass2?
  278. -Wobjc-method-access instance method %objcinstance0 not found (return type defaults to 'id')
  279. -Wobjc-method-access instance method % is being used on 'Class' which is not in the root class
  280. -Wobjc-method-access class method %objcclass0 not found (return type defaults to 'id')
  281. -Wobjc-method-access instance method % found instead of class method %
  282. -Wobjc-missing-property-synthesis "auto property synthesis is synthesizing property not explicitly synthesized
  283. -Wobjc-missing-super-calls method possibly missing a [super %] call
  284. -Wobjc-noncopy-retain-block-property "retain'ed block property does not copy the block " "- use copy attribute instead
  285. -Wobjc-nonunified-exceptions can not catch an exception thrown with @throw in C++ in the non-unified exception model
  286. -Wobjc-property-implementation property % requires method % to be defined - use @dynamic or provide a method implementation in this category
  287. -Wobjc-property-implementation property % requires method % to be defined - use @synthesize, @dynamic or provide a method implementation in this class implementation
  288. -Wobjc-property-implicit-mismatch "primary property declaration is implicitly strong while redeclaration in class extension is weak
  289. -Wobjc-property-matches-cocoa-ownership-rule property's synthesized getter follows Cocoa naming convention for returning 'owned' objects
  290. -Wobjc-property-no-attribute no 'assign', 'retain', or 'copy' attribute is specified - 'assign' is assumed
  291. -Wobjc-property-no-attribute default property attribute 'assign' not appropriate for non-GC object
  292. -Wobjc-property-synthesis auto property synthesis will not synthesize property '%0' because it is 'readwrite' but it will be synthesized 'readonly' via another property
  293. -Wobjc-property-synthesis "auto property synthesis will not synthesize property '%0' because it cannot share an ivar with another synthesized property
  294. -Wobjc-protocol-method-implementation category is implementing a method which will also be implemented by its primary class
  295. -Wobjc-protocol-property-synthesis auto property synthesis will not synthesize property declared in a protocol
  296. -Wobjc-redundant-literal-use using % with a literal is redundant
  297. -Wobjc-root-class class % defined without specifying a base class
  298. -Wobjc-string-compare direct comparison of a string literal has undefined behavior
  299. -Wobjc-string-concatenation concatenated NSString literal for an NSArray expression - possibly missing a comma
  300. -Wover-aligned type % requires % bytes of alignment and the default allocator only guarantees % bytes
  301. -Woverloaded-shift-op-parentheses overloaded operator %select{|} has lower precedence than comparison operator
  302. -Woverloaded-virtual %q0 hides overloaded virtual %select{function|functions}
  303. -Woverriding-method-mismatch conflicting distributed object modifiers on parameter type in declaration of %
  304. -Woverriding-method-mismatch conflicting parameter types in declaration of %: % vs %
  305. -Woverriding-method-mismatch conflicting variadic declaration of method and its implementation
  306. -Woverriding-method-mismatch conflicting distributed object modifiers on return type in declaration of %
  307. -Woverriding-method-mismatch conflicting parameter types in declaration of %%diff{: $ vs $|},
  308. -Woverriding-method-mismatch conflicting return type in declaration of %%diff{: $ vs $|},
  309. -Woverriding-method-mismatch conflicting return type in declaration of %: % vs %
  310. -Wpacked packed attribute is unnecessary for %
  311. -Wpadded padding %select{struct|interface|class} % with % %select{byte|bit}%select{|s} to align anonymous bit-field
  312. -Wpadded padding %select{struct|interface|class} % with % %select{byte|bit}%select{|s} to align %
  313. -Wpadded padding size of % with % %select{byte|bit}%select{|s} to alignment boundary
  314. -Wparentheses using the result of an assignment as a condition without parentheses
  315. -Wparentheses % has lower precedence than % % will be evaluated first
  316. -Wparentheses operator '?:' has lower precedence than '%0' '%0' will be evaluated first
  317. -Wparentheses-equality equality comparison with extraneous parentheses
  318. -Wpointer-arith subtraction of pointers to type % of zero size has undefined behavior
  319. -Wpredefined-identifier-outside-function predefined identifier is only valid inside function
  320. -Wprivate-extern use of __private_extern__ on a declaration may not produce external symbol private to the linkage unit and is deprecated
  321. -Wprotocol method % in protocol not implemented
  322. -Wprotocol-property-synthesis-ambiguity property of type % was selected for synthesis
  323. -Wreadonly-iboutlet-property readonly IBOutlet property '%0' when auto-synthesized may not work correctly with 'nib' loader
  324. -Wreadonly-setter-attrs property attributes '%0' and '%1' are mutually exclusive
  325. -Wreceiver-expr receiver type % is not 'id' or interface pointer, consider casting it to 'id'
  326. -Wreceiver-forward-class receiver type % for instance message is a forward declaration
  327. -Wreceiver-is-weak "weak %select{receiver|property|implicit property}0 may be unpredictably set to nil
  328. -Wreinterpret-base-class 'reinterpret_cast' %select{from|to} class % %select{to|from} its %select{virtual base|base at non-zero offset} % behaves differently from 'static_cast'
  329. -Wreorder %select{field|base class} % will be initialized after %select{field|base} %
  330. -Wrequires-super-attribute % attribute cannot be applied to %select{methods in protocols|dealloc}
  331. -Wreturn-stack-address returning address of local temporary object
  332. -Wreturn-stack-address returning address of label, which is local
  333. -Wreturn-stack-address address of stack memory associated with local variable % returned
  334. -Wreturn-stack-address reference to stack memory associated with local variable % returned
  335. -Wreturn-stack-address returning reference to local temporary object
  336. -Wreturn-type control may reach end of non-void function
  337. -Wreturn-type non-void %select{function|method} % should return a value, DefaultError
  338. -Wreturn-type control reaches end of non-void function
  339. -Wreturn-type-c-linkage % has C-linkage specified, but returns incomplete type % which could be incompatible with C
  340. -Wreturn-type-c-linkage % has C-linkage specified, but returns user-defined type % which is incompatible with C
  341. -Wsection section does not match previous declaration
  342. -Wselector creating selector for nonexistent method %
  343. -Wselector-type-mismatch multiple selectors named % found
  344. -Wself-assign explicitly assigning a variable of type % to itself
  345. -Wself-assign-field assigning %select{field|instance variable} to itself
  346. -Wsentinel "missing sentinel in %select{function call|method dispatch|block call}0
  347. -Wsentinel not enough variable arguments in % declaration to fit a sentinel
  348. -Wshadow declaration shadows a %select{" "local variable|" "variable in %|" "static data member of %|" "field of %}
  349. -Wshadow-ivar local declaration of % hides instance variable
  350. -Wshift-count-negative shift count is negative
  351. -Wshift-count-overflow shift count = width of type
  352. -Wshift-op-parentheses operator '%0' has lower precedence than '%1' '%1' will be evaluated first
  353. -Wshift-overflow signed shift result (%) requires % bits to represent, but % only has % bits
  354. -Wshift-sign-overflow signed shift result (%) sets the sign bit of the shift expression's type (%1) and becomes negative
  355. -Wshorten--to- implicit conversion loses integer precision: % to %
  356. -Wsign-compare comparison of integers of different signs: % and %
  357. -Wsign-conversion implicit conversion changes signedness: % to %
  358. -Wsign-conversion operand of ? changes signedness: % to %
  359. -Wsizeof-array-argument sizeof on array function parameter will return size of % instead of %
  360. -Wsizeof-array-decay sizeof on pointer operation will return size of % instead of %
  361. -Wsizeof-pointer-memaccess '%0' call operates on objects of type % while the size is based on a " "different type %
  362. -Wsizeof-pointer-memaccess argument to 'sizeof' in % call is the same pointer type % as the %select{destination|source} expected % or an explicit length
  363. -Wsometimes-uninitialized variable % is %select{used|captured} uninitialized whenever %select{'%3' condition is %select{true|false}|'%3' loop %select{is entered|exits because its condition is false}|'%3' loop %select{condition is true|exits because its condition is false}|switch % is taken|its declaration is reached|% is called}
  364. -Wstatic-local-in-inline non-constant static local variable in inline function may be different in different files
  365. -Wstatic-self-init static variable % is suspiciously used within its own initialization
  366. -Wstrict-selector-match multiple methods named % found
  367. -Wstring-compare result of comparison against %select{a string literal|@encode} is unspecified (use strncmp instead)
  368. -Wstring-conversion implicit conversion turns string literal into bool: % to %
  369. -Wstring-plus-char adding % to a string pointer does not append to the string
  370. -Wstring-plus-int adding % to a string does not append to the string
  371. -Wstrlcpy-strlcat-size size argument in % call appears to be size of the source expected the size of the destination
  372. -Wstrncat-size the value of the size argument in 'strncat' is too large, might lead to a " "buffer overflow
  373. -Wstrncat-size size argument in 'strncat' call appears " "to be size of the source
  374. -Wstrncat-size the value of the size argument to 'strncat' is wrong
  375. -Wsuper-class-method-mismatch method parameter type %diff{$ does not match super class method parameter type $|does not match super class method parameter type},
  376. -Wswitch overflow converting case value to switch condition type (% to %)
  377. -Wswitch case value not in enumerated type %
  378. -Wswitch % enumeration values not handled in switch: %, %, %...
  379. -Wswitch enumeration values % and % not handled in switch
  380. -Wswitch enumeration value % not handled in switch
  381. -Wswitch enumeration values %, %, and % not handled in switch
  382. -Wswitch-enum enumeration values %, %, and % not explicitly handled in switch
  383. -Wswitch-enum enumeration values % and % not explicitly handled in switch
  384. -Wswitch-enum % enumeration values not explicitly handled in switch: %, %, %...
  385. -Wswitch-enum enumeration value % not explicitly handled in switch
  386. -Wtautological-compare comparison of % unsigned%select{| enum} expression is always %
  387. -Wtautological-compare %select{self-|array }0comparison always evaluates to %select{false|true|a constant}
  388. -Wtautological-compare comparison of unsigned%select{| enum} expression % is always %
  389. -Wtautological-constant-out-of-range-compare comparison of constant % with expression of type % is always %select{false|true}
  390. -Wthread-safety-analysis locking '%0' that is already locked
  391. -Wthread-safety-analysis cannot call function '%0' while mutex '%1' is locked
  392. -Wthread-safety-analysis %select{reading|writing} the value pointed to by '%0' requires locking %select{'%1'|'%1' exclusively}
  393. -Wthread-safety-analysis unlocking '%0' that was not locked
  394. -Wthread-safety-analysis mutex '%0' is locked exclusively and shared in the same scope
  395. -Wthread-safety-analysis calling function '%0' requires %select{shared|exclusive} lock on '%1'
  396. -Wthread-safety-analysis %select{reading|writing} variable '%0' requires locking %select{'%1'|'%1' exclusively}
  397. -Wthread-safety-analysis cannot resolve lock expression
  398. -Wthread-safety-analysis expecting mutex '%0' to be locked at the end of function
  399. -Wthread-safety-analysis mutex '%0' is not locked on every path through here
  400. -Wthread-safety-analysis %select{reading|writing} the value pointed to by '%0' requires locking %select{any mutex|any mutex exclusively}
  401. -Wthread-safety-analysis %select{reading|writing} variable '%0' requires locking %select{any mutex|any mutex exclusively}
  402. -Wthread-safety-analysis mutex '%0' is still locked at the end of function
  403. -Wthread-safety-analysis expecting mutex '%0' to be locked at start of each loop
  404. -Wthread-safety-attributes ignoring % attribute because its argument is invalid
  405. -Wthread-safety-attributes % attribute only applies to %select{fields and global variables|functions and methods|classes and structs}
  406. -Wthread-safety-attributes % attribute requires arguments that are class type or point to class type type here is '%1'
  407. -Wthread-safety-attributes % attribute can only be applied in a context annotated with 'lockable' attribute
  408. -Wthread-safety-attributes % attribute requires arguments whose type is annotated with 'lockable' attribute type here is '%1'
  409. -Wthread-safety-attributes '%0' only applies to pointer types type here is %
  410. -Wthread-safety-beta Thread safety beta warning.
  411. -Wthread-safety-precise %select{reading|writing} the value pointed to by '%0' requires locking %select{'%1'|'%1' exclusively}
  412. -Wthread-safety-precise %select{reading|writing} variable '%0' requires locking %select{'%1'|'%1' exclusively}
  413. -Wthread-safety-precise calling function '%0' requires %select{shared|exclusive} lock on '%1'
  414. -Wtype-safety this type tag was not designed to be used with this function
  415. -Wtype-safety specified % type tag requires a null pointer
  416. -Wtype-safety argument type % doesn't match specified '%' type tag %select{that requires %3|}2
  417. -Wundeclared-selector undeclared selector % did you mean %?
  418. -Wundeclared-selector undeclared selector %
  419. -Wundefined-inline inline function %q0 is not defined
  420. -Wundefined-internal %select{function|variable} %q1 has internal linkage but is not defined
  421. -Wundefined-reinterpret-cast dereference of type % that was reinterpret_cast from type % has undefined behavior
  422. -Wundefined-reinterpret-cast reinterpret_cast from % to % has undefined behavior
  423. -Wuninitialized reference % is not yet bound to a value when used within its own initialization
  424. -Wuninitialized field % is uninitialized when used here
  425. -Wuninitialized block pointer variable % is uninitialized when captured by block
  426. -Wuninitialized variable % is uninitialized when used within its own initialization
  427. -Wuninitialized variable % is uninitialized when %select{used here|captured by block}
  428. -Wuninitialized reference % is not yet bound to a value when used here
  429. -Wunneeded-internal-declaration %select{function|variable} % is not needed and will not be emitted
  430. -Wunneeded-internal-declaration 'static' function % declared in header file should be declared 'static inline'
  431. -Wunneeded-member-function member function % is not needed and will not be emitted
  432. -Wunreachable-code will never be executed
  433. -Wunsequenced multiple unsequenced modifications to %
  434. -Wunsequenced unsequenced modification and access to %
  435. -Wunsupported-friend dependent nested name specifier '%0' for friend template declaration is not supported ignoring this friend declaration
  436. -Wunsupported-friend dependent nested name specifier '%0' for friend class declaration is not supported turning off access control for %
  437. -Wunsupported-visibility target does not support 'protected' visibility using 'default'
  438. -Wunused-comparison %select{equality|inequality} comparison result unused
  439. -Wunused-const-variable unused variable %
  440. -Wunused-exception-parameter unused exception parameter %
  441. -Wunused-function unused function %
  442. -Wunused-label unused label %
  443. -Wunused-member-function unused member function %
  444. -Wunused-parameter unused parameter %
  445. -Wunused-private-field private field % is not used
  446. -Wunused-property-ivar ivar % which backs the property is not referenced in this property's accessor
  447. -Wunused-result ignoring return value of function declared with warn_unused_result attribute
  448. -Wunused-value ignoring return value of function declared with % attribute
  449. -Wunused-value expression result unused should this cast be to 'void'?
  450. -Wunused-value expression result unused
  451. -Wunused-variable unused variable %
  452. -Wunused-volatile-lvalue expression result unused assign into a variable to force a volatile load
  453. -Wused-but-marked-unused % was marked unused but was used
  454. -Wuser-defined-literals user-defined literal suffixes not starting with '_' are reserved%select{ no literal will invoke this operator|}
  455. -Wvarargs second parameter of 'va_start' not last named argument
  456. -Wvarargs 'va_start' has undefined behavior with reference types
  457. -Wvarargs second argument to 'va_arg' is of promotable type % this va_arg has undefined behavior because arguments will be promoted to %
  458. -Wvector-conversion incompatible vector types %select{%diff{assigning to $ from $|assigning to different types},|%diff{passing $ to parameter of type $|passing to parameter of different type},|%diff{returning $ from a function with result type $|returning from function with different return type},|%diff{converting $ to type $|converting between types},|%diff{initializing $ with an expression of type $|initializing with expression of different type},|%diff{sending $ to parameter of type $|sending to parameter of different type},|%diff{casting $ to type $|casting between types},}
  459. -Wvexing-parse parentheses were disambiguated as a function declaration
  460. -Wvexing-parse empty parentheses interpreted as a function declaration
  461. -Wvisibility declaration of % will not be visible outside of this function
  462. -Wvisibility redefinition of % will not be visible outside of this function
  463. -Wvla variable length array used
  464. -Wvla-extension variable length arrays are a C99 feature
  465. -Wweak-template-vtables explicit template instantiation % will emit a vtable in every translation unit
  466. -Wweak-vtables % has no out-of-line virtual method definitions; its vtable will be emitted in every translation unit
  467. Lexer Warnings
  468. Warning Message
  469. -W#pragma-messages %0
  470. -W#warnings %
  471. -W#warnings %
  472. -Wambiguous-macro ambiguous expansion of macro %
  473. -Wauto-import treating #%select{include|import|include_next|__include_macros} as an import of module '%1'
  474. -Wbackslash-newline-escape backslash and newline separated by space
  475. -Wc++-compat identifier after literal will be treated as a user-defined literal suffix in C++
  476. -Wc++-compat '%0' is a keyword in C++
  477. -Wc++-c++-compat digit separators are incompatible with C++ standards before C++1y
  478. -Wc++-c++-compat-pedantic binary integer literals are incompatible with C++ standards before C++1y
  479. -Wc++-compat raw string literals are incompatible with C++
  480. -Wc++-compat unicode literals are incompatible with C++
  481. -Wc++-compat universal character name referring to a control character is incompatible with C++
  482. -Wc++-compat '::' is treated as digraph ':' (aka '[') followed by ':' in C++
  483. -Wc++-compat using this character in an identifier is incompatible with C++
  484. -Wc++-compat specifying character '%0' with a universal character name is incompatible with C++
  485. -Wc++-compat-pedantic variadic macros are incompatible with C++
  486. -Wc++-compat-pedantic #line number greater than 32767 is incompatible with C++98
  487. -Wc++-compat-pedantic C++ requires newline at end of file
  488. -Wc++-compat-pedantic empty macro arguments are incompatible with C++
  489. -Wc99-compat unicode literals are incompatible with C99
  490. -Wc99-compat %select{using this character in an identifier|starting an identifier with this character} is incompatible with C99
  491. -Wcomment '/*' within block comment
  492. -Wcomment escaped newline between */ characters at block comment end
  493. -Wdisabled-macro-expansion disabled expansion of recursive macro
  494. -Wheader-guard % is used as a header guard here, followed by #define of a different macro
  495. -Wignored-attributes unknown attribute '%0'
  496. -Wincomplete-module header '%0' is included in module '%1' but not listed in module map
  497. -Wincomplete-umbrella umbrella header for module '%0' does not include header '%1'
  498. -Winvalid-token-paste pasting formed '%0', an invalid preprocessing token, DefaultError
  499. -Wmalformed-warning-check __has_warning expected option name (e.g. \"-Wundef\")
  500. -Wnewline-eof no newline at end of file
  501. -Wnull-character null character ignored
  502. -Wnull-character null character(s) preserved in string literal
  503. -Wnull-character null character(s) preserved in character literal
  504. -Wtrigraphs ignored trigraph would end block comment
  505. -Wtrigraphs trigraph ignored
  506. -Wundef % is not defined, evaluates to
  507. -Wunicode universal character names are only valid in C99 or C++ treating as '\\' followed by identifier
  508. -Wunicode \\% used with no following hex digits treating as '\\' followed by identifier
  509. -Wunicode incomplete universal character name treating as '\\' followed by identifier
  510. -Wunicode universal character name refers to a surrogate character
  511. -Wunknown-pragmas unknown pragma ignored
  512. -Wunknown-pragmas pragma STDC FENV_ACCESS ON is not supported, ignoring pragma
  513. -Wunused-macros macro is not used
  514. Parser Warnings
  515. Warning Message
  516. -Warc-bridge-casts-disallowed-in-nonarc '%0' casts have no effect when not using ARC
  517. -Wattributes unknown __declspec attribute % ignored
  518. -Wavailability 'unavailable' availability overrides all other availability information
  519. -Wc++-compat use of right-shift operator ('') in template argument will require parentheses in C++
  520. -Wc++-compat 'auto' storage class specifier is redundant and incompatible with C++
  521. -Wc++-c++-compat 'decltype(auto)' type specifier is incompatible with C++ standards before C++1y
  522. -Wc++-compat range-based for loop is incompatible with C++
  523. -Wc++-compat alias declarations are incompatible with C++
  524. -Wc++-compat in-class initialization of non-static data members is incompatible with C++
  525. -Wc++-compat defaulted function definitions are incompatible with C++
  526. -Wc++-compat rvalue references are incompatible with C++
  527. -Wc++-compat reference qualifiers on functions are incompatible with C++
  528. -Wc++-compat inline namespaces are incompatible with C++
  529. -Wc++-compat generalized initializer lists are incompatible with C++
  530. -Wc++-compat trailing return types are incompatible with C++
  531. -Wc++-compat enumeration types with a fixed underlying type are incompatible with C++
  532. -Wc++-compat alignof expressions are incompatible with C++
  533. -Wc++-compat '%0' keyword is incompatible with C++
  534. -Wc++-compat 'decltype' type specifier is incompatible with C++
  535. -Wc++-compat deleted function definitions are incompatible with C++
  536. -Wc++-compat consecutive right angle brackets are incompatible with C++ (use '> >')
  537. -Wc++-compat static_assert declarations are incompatible with C++
  538. -Wc++-compat scoped enumerations are incompatible with C++
  539. -Wc++-compat lambda expressions are incompatible with C++
  540. -Wc++-compat attributes are incompatible with C++
  541. -Wc++-compat 'alignas' is incompatible with C++
  542. -Wc++-compat noexcept specifications are incompatible with C++
  543. -Wc++-compat literal operators are incompatible with C++
  544. -Wc++-compat noexcept expressions are incompatible with C++
  545. -Wc++-compat 'nullptr' is incompatible with C++
  546. -Wc++-compat-pedantic extra '' outside of a function is incompatible with C++
  547. -Wc++-compat-pedantic extern templates are incompatible with C++
  548. -Wc++-compat-pedantic commas at the end of enumerator lists are incompatible with C++
  549. -Wdangling-else add explicit braces to avoid dangling else
  550. -Wdeprecated Use of 'long' with '__vector' is deprecated
  551. -Wdeprecated-declarations use of C-style parameters in Objective-C method declarations is deprecated
  552. -Wdeprecated-register 'register' storage class specifier is deprecated
  553. -Wduplicate-decl-specifier duplicate '%0' declaration specifier
  554. -Wextra-semi extra ';' after member function definition
  555. -Wextra-tokens "extra tokens at the end of '#pragma omp %0' are ignored
  556. -Wgcc-compat GCC does not allow % attribute in this position on a function definition
  557. -Wignored-attributes attribute % ignored, because it is not attached to a declaration
  558. -Wmicrosoft-exists dependent %select{__if_not_exists|__if_exists} declarations are ignored
  559. -Wmissing-selector-name % used as the name of the previous parameter rather than as part of the selector
  560. -Wsemicolon-before-method-body semicolon before method body is ignored
  561. -Wsource-uses-openmp "unexpected '#pragma omp ...' in program
  562. -Wstatic-inline-explicit-instantiation ignoring '%select{static|inline}0' keyword on explicit template instantiation

原博主:http://www.jianshu.com/p/eb03e20f7b1c

iOS:消除项目中警告的更多相关文章

  1. iOS原生项目中集成React Native

    1.本文的前提条件是,电脑上已经安装了CocoaPods,React Native相关环境. 2.使用Xcode新建一个工程.EmbedRNMeituan [图1] 3.使用CocoaPods安装Re ...

  2. iOS:项目中疑难Crash问题集锦

    项目中疑难Crash问题集锦 iOS App运行中遇到Crash的情况相信大家都遇到过,开发和者测试中遇到了可能很方便的办法就是直接拿着设备连接一下,然后使用Xcode自带的工具就可以解析出Crash ...

  3. iOS 之项目中遇到的问题总结

    昨天去一家公司面试,面试官问了我在项目开发中遇到过哪些问题,是什么引起的,怎样解决的? 当时由于有点小紧张只说出了一两点,现在就来好好总结一下. 问题: 1.两表联动 所谓的两表联动就是有左右两个表格 ...

  4. ios在项目中打开word文档、ppt等总结

    最近在项目开发中遇到下载附件文档预览需求,在这里总结一下我的实现方法,本文最后会附带我写的demo下载地址 这里我总结了三种实现方法(1)用webView预览(2)通过UIDocumentIntera ...

  5. iOS对项目中第三方类库的管理——CocoaPods

    http://blog.csdn.net/lengshengren/article/details/1767 唐巧的博客:http://www.devtang.com/blog/2014/05/25/ ...

  6. 直接拿来用!最火的iOS开源项目

    1. AFNetworking 在众多iOS开源项目中,AFNetworking可以称得上是最受开发者欢迎的库项目.AFNetworking是一个轻量级的iOS.Mac OS X网络通信类库,现在是G ...

  7. (转)直接拿来用!最火的iOS开源项目(一)

    1. AFNetworking 在众多iOS开源项目中,AFNetworking可以称得上是最受开发者欢迎的库项目.AFNetworking是一个轻量级的iOS.Mac OS X网络通信类库,现在是G ...

  8. 【转】GitHub平台最火的iOS开源项目——2013-08-25 17

    http://www.cnblogs.com/lhming/category/391396.html 今天,我们将介绍20个在GitHub上非常受开发者欢迎的iOS开源项目,你准备好了吗? 1. AF ...

  9. iOS开源项目

    在结束了GitHub平台上“最受欢迎的Android开源项目”系列盘点之后,我们正式迎来了“GitHub上最受欢迎的iOS开源项目”系列盘点.今天,我们将介绍20个在GitHub上非常受开发者欢迎的i ...

随机推荐

  1. android之OptionsMenu

    首先编写res/layout/Activity_main.xml 代码如下: <LinearLayout xmlns:android="http://schemas.android.c ...

  2. PHP统计字符串里单词查询关键字

    <?function full_count_words($str) {     //返回完整数组,包含字符串里每个单词 $words = str_word_count($str,1);     ...

  3. 【iCore2 双核心板视频教程一】iM_LAN 100M 以太网模块UDP例程(包含视频教程)

    ============================== 技术论坛:http://www.eeschool.org 博客地址:http://xiaomagee.cnblogs.com 官方网店:h ...

  4. ASP.NET MVC4系列验证机制、伙伴类共享源数据信息(数据注解和验证)

    一,mvc前后台验证 自定义属性标签MyRegularExpression using System; using System.Collections.Generic; using System.C ...

  5. ueditor1.4.3 php版本使用修改图片上传路径

    实例化编辑器必须带上一下东西 header部分 <script type="text/javascript" charset="utf-8" src=&q ...

  6. Mysql时间函数

    http://blog.sina.com.cn/s/blog_6d39dc6f0100m7eo.html mysql中函数和关键字不区分大小写.下文函数的datetime参数处既可以用时间字符串也可以 ...

  7. Javascript 笔记与总结(2-5)window 对象

    浏览器 window 对象(BOM)是浏览器宿主对象,和 js 语言无关. [window 对象的方法] window.alert(message); window.confirm(message); ...

  8. 送给和我一样曾经浮躁过的PHP程序猿

    送给和我一样曾经浮躁过的PHP程序猿   2012年偶决定开始写博客了,不为别的,就希望可以通过博客记录我的成长历程,同时也希望可以帮助一些刚毕业,刚入行业的兄弟姐们 们.我们是一群充满浮躁.抱怨.迷 ...

  9. Peeking into Apache Flink's Engine Room

    http://flink.apache.org/news/2015/03/13/peeking-into-Apache-Flinks-Engine-Room.html   Join Processin ...

  10. IIS7 .NET Runtime version 2.0.50727.5420 - 执行引擎错误(000007FEE77AAF0E) (80131506)

    装完系统,配置完IIS,发现.NET程序报503错误,出错后连接池自动关闭 这个程序是需要连接access数据库的,打开系统日志发现错误如下: 错误应用程序名称: w3wp.exe,版本: 7.5.7 ...