问题四:C++中inline是干嘛用的

iInline:若一个函数被指定为inline函数,则它将在程序中每个调用点上被内联地展开。一般来说,内联函数不会引入任何函数调用。所以可以提高执行效率。

注意,函数home() 、get() 、height()和width()的定义是在类体内提供的。这些函数被称为“在类定义中定义的内联(inline)函数”。这些函数被自动作为inline函数处理。

我们也可以通过在成员函数的返回类型前显式地指定关键字inline,在类体内将这些成

员函数声明为inline的。如上代码中:

inline float x() const { return e[0];}

 inline const vec3& operator+()const { return *this; }

一两行以上的成员函数最好被定义在类体之外。通常,在类体外定义的成员函数不是inline的。但是这样的函数也可以被声明为inline函数,可以通过显式地在类体中出现的函数声明上使用关键字inline,或者通过在类体外出现的函数定义上显式使用关键字inline,或者两者都用。如上代码中:

  inline vec3& operator+=(const vec3&v2);

 inline vec3& vec3::operator+=(constvec3 &v)

{

    e[0] += v.e[0];

    e[1] += v.e[1];

    e[2] += v.e[2];

 

    return *this;

}

 

  • 5
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值