最近更新: 2006-12-06

C Macro 似乎只剩下讓 programmer 少打些字的功能

看到《C 的 marco》中例舉的 C Macro ,讓我有憶起舊日時光的感觸。當初覺得 Macro (in Assembly and C) 很有趣,但和最近興起的動態語言比起來, Macro 似乎只剩下讓 programmer 少打些字的功能。再者, Macro 的內容沒什麼規範,換個 C compiler 可能就不能用了。雖然我也是 gcc 使用者的,但這類特殊功能我想還是能免則免。

在符合 ANSI C99 規範的 C compiler 之中,用 inline function 可保有 Macro 的優點,而沒有 Macro 的缺點。An Inline Function is As Fast As a Macro。Also see: Explain Inline Function in C (GCC compiler)。所以現在大多用 inline function 而不用 macro 了。

樂多舊網址: http://blog.roodo.com/rocksaying/archives/2550044.html