虚拟函数是一个在基类中声明的成员函数,由派生类重新定义。内联函数。内联函数是一个由关键字inline定义的普通函数,它是一个被编译器扩展的短函数,其参数只被评估一次。
在C++中定义内联函数的语法是 -

inline return-type function-name(parameters)
{
    // function code
}

虚函数和内联函数的区别如下 -

虚函数 内联函数
1 虚拟函数必须在类的公共部分声明。 内联函数是一个正常的函数,由关键字inline定义。
2 虚拟函数不能是静态的。 内联函数也可以是非静态的。
3 虚拟函数在基类中定义。 内联函数是长度较短的函数,无需在类中使用内联关键字即可自动成为内联函数。
4 虚拟函数会降低代码的效率。 内联函数用于提高代码的效率。
5 虚拟函数是为了运行时的多态性。 内联函数是为了在编译时进行多态性。
6 虚拟函数可以包括虚拟析构器,但不能有虚拟构造器。 内联函数也可以包括内联构造函数。
7 虚拟可以用于动态链接。 内联函数被用来减少函数调用的开销。
欢迎任何形式的转载,但请务必注明出处,尊重他人劳动成果。
转载请注明:文章转载自 有区别网 [http://www.vsdiffer.com]
本文标题:C++中虚函数和内联函数的区别
本文链接:https://www.vsdiffer.com/vs/difference-between-virtual-function-and-inline-function-in-c.html
免责声明:以上内容仅是站长个人看法、理解、学习笔记、总结和研究收藏。不保证其正确性,因使用而带来的风险与本站无关!如本网站内容冒犯了您的权益,请联系站长,邮箱: ,我们核实并会尽快处理。