C++ 中内联函数和宏的区别
在这篇文章中,我们将了解 C++ 中内联函数和宏的区别。
内联函数
它是 C++ 中的一种函数。
它由编译器解析。
它可以在类内或类外定义。
它只评估参数一次。
编译器可能不会将所有函数转换为“内联”函数并扩展它们。
在类内部定义的短函数会自动成为内联函数。
类内的内联函数可以访问类的成员数据。
内联函数可以使用大括号终止。
它易于调试。
这是因为错误检查在编译期间完成。
它绑定函数体中的所有语句。
示例
inline return_type funct_name ( parameters ) { . . . }
宏
它由预处理器扩展。
它在程序开头定义。
它在代码中每次使用时都会评估参数。
它们总是需要/会被扩展。
它们需要专门定义。
它们永远不会成为类的成员。
它们无法访问类的成员数据。
宏的定义以换行符结束。
由于错误检查不会在编译时发生,因此难以调试宏。
如果它包含多个语句,则会遇到绑定问题,因为它没有终止符号。
示例
#define macro_name char_sequence
广告