能力与责任

宏非常强大。 宏可以改变表达式的语义,让不知道宏做什么的人难以理解。 可以使用模板或泛型实现的相同逻辑,最好不要使用宏。 当宏用于某种用途时,应当有一个优秀的文档。 说自己写的代码一目了然的人实现宏时,需要足够的文档。