原:
http://blog.csdn.net/daleiwang/article/details/50580555
這段總結比較好:
const簡介:之前常用的字符串常量,一般是抽成宏,但是蘋果不推薦我們抽成宏,推薦我們使用const常量。
編譯時刻:宏是預編譯(編譯之前處理),const是編譯階段。
編譯檢查:宏不做檢查,不會報編譯錯誤,只是替換,const會編譯檢查,會報編譯錯誤。
宏的好處:宏能定義一些函數,方法。 const不能。
宏的壞處:使用大量宏,容易造成編譯時間久,每次都需要重新替換。
注意:很多Blog都說使用宏,會消耗很多內存,我這驗證并不會生成很多內存,宏定義的是常量,常量都放在常量區,只會生成一份內存。