自c++11
起,c++函数的修饰符增加了许多。在这里小小总结一下使用情况和使用顺序,以供参考。
按下图顺序讲解
inline
inline
修饰符将函数声明为内联函数以便编译期优化。要注意的是在类内定义的成员函数将默认是内联的。virtual
(修饰成员函数)
将成员函数声明为虚函数实现多态。注意inline virtual
,虚函数是可以被内联的,前提是虚函数没有表现多态的时候,也就是编译器知道你要调用哪个类的对象。void
函数返回值,略。f
函数名,略。const
限定符(修饰成员函数)
const
限定符,只有 const 对象可以调用该函数。本质是,普通成员函数的第一个参数是一个隐式 this 指针,const 修饰后将该指针类型修改为 const this 指针。volatile
限定符(修饰成员函数)
和上条相似,且可以和const
限定符同时存在,略。&a