CC++中宏与函数有哪些本质区别,能详细阐述一下吗?