friend function:
前面有关键字 friend,可以用(.)来引用class中的private和protected成员,虽然定义在class中,但不属于class中的member。
也就是在class中定义原型,在class外面定义body
#include <iostream>
using namespace std;
class Box
{
double width;
public:
void setwidth(double wid)
{
width=wid;
}
friend void showvalue(Box box); // dont belong to any class
};
void showvalue(Box box) // 正常函数定义,不需要有class或friend
{
cout << box.width;
}
int main()
{
Box box1;
box1.setwidth(11.1);
showvalue(box1);
return 0;
}
inline function:
定义在class内部的function,无论是否有关键字inline,都默认是inline function
如果多次调用函数,可以将函数设置为inline,可以提高效率