正在加载图片...
3)虽然有参宏与有参函数确实有相似之处,但不同之处更多, 主要有以下几个方面: 1)调用有参函数时,是先求出实参的值,然后再复制一份给形参。 而展开有参宏时,只是将实参简单地置换形参。 2)在有参函数中,形参是有类型的,所以要求实参的类型与其 致;而在有参宏中,形参是没有类型信息的,因此用于置换的实参 什么类型都可以。有时,可利用有参宏的这一特性,实现通用函数功 3)使用有参函数,无论调用多少次,都不会使目标程序变长,但 每次调用都要占用系统时间进行调用现场保护和现场恢复;而使用有 参宏,由于宏展开是在编译时进行的,所以不占运行时间,但是每引 用1次,都会使目标程序增大1次。 Return(3)虽然有参宏与有参函数确实有相似之处,但不同之处更多, 主要有以下几个方面: 1)调用有参函数时,是先求出实参的值,然后再复制一份给形参。 而展开有参宏时,只是将实参简单地置换形参。 2)在有参函数中,形参是有类型的,所以要求实参的类型与其一 致;而在有参宏中,形参是没有类型信息的,因此用于置换的实参, 什么类型都可以。有时,可利用有参宏的这一特性,实现通用函数功 能。 3)使用有参函数,无论调用多少次,都不会使目标程序变长,但 每次调用都要占用系统时间进行调用现场保护和现场恢复;而使用有 参宏,由于宏展开是在编译时进行的,所以不占运行时间,但是每引 用1次,都会使目标程序增大1次。 [Return]
<<向上翻页向下翻页>>
©2008-现在 cucdc.com 高等教育资讯网 版权所有