内联函数具有一般函数的特性,他与一般函数不同之处只在于函数调用的处理。一般函数进行调用时要将程序执行权转到被调用函数中,然后在返回调用他的函数中;而内敛函数在调用时,是将调用表达式用内联函数体来替换。
内联函数使用注意要点
1.在内敛函数内不允许用循环语句和开关语句。若有则编译器将该函数视为普通函数那样昌盛函数调用代码,递归函数(自己调用自己)是不能作为内敛函数的。内联函数只适用于1——5行的小函数。对于宇哥含有很多语句的大函数,函数调用和返回的开销相对于来说微不足道,所以没不要用内联函数。
2.内联函数的定义必须出现在内联函数第一次被调用之前。
3.内联函数例子:
内联函数 在类声明的内部声明或定义的成员函数叫做内联(INLINE)函数.
有两种实现方式:
1.在类声明的内部声明,而在类声明外部定义叫做显式内联函数,如:
class display
{
int t;
public:
void output(void)
}
display object;
inline void display::output(void)
{
cout << "i is " << i <<"\n";
}
2.在类声明的内部定义,叫做隐式内联函数,如:
class display
{
int t;
public:
inline void
内联函数和define差不多
4.内联函数于define的区别:
(1)内联函数在运行时可调试,而宏定义不可以; (2)编译器会对内联函数的参数类型做安全检查或自动类型转换(同普通函数),而宏定义则不会;
(3)内联函数可以访问类的成员变量,宏定义则不能; (4)在类中声明同时定义的成员函数,自动转化为内联函数。
内联函数使用注意要点
1.在内敛函数内不允许用循环语句和开关语句。若有则编译器将该函数视为普通函数那样昌盛函数调用代码,递归函数(自己调用自己)是不能作为内敛函数的。内联函数只适用于1——5行的小函数。对于宇哥含有很多语句的大函数,函数调用和返回的开销相对于来说微不足道,所以没不要用内联函数。
2.内联函数的定义必须出现在内联函数第一次被调用之前。
3.内联函数例子:
内联函数 在类声明的内部声明或定义的成员函数叫做内联(INLINE)函数.
有两种实现方式:
1.在类声明的内部声明,而在类声明外部定义叫做显式内联函数,如:
class display
{
int t;
public:
void output(void)
}
display object;
inline void display::output(void)
{
cout << "i is " << i <<"\n";
}
2.在类声明的内部定义,叫做隐式内联函数,如:
class display
{
int t;
public:
inline void
内联函数和define差不多
4.内联函数于define的区别:
(1)内联函数在运行时可调试,而宏定义不可以; (2)编译器会对内联函数的参数类型做安全检查或自动类型转换(同普通函数),而宏定义则不会;
(3)内联函数可以访问类的成员变量,宏定义则不能; (4)在类中声明同时定义的成员函数,自动转化为内联函数。