实函数和虚函数 哪些函数能被声明为虚函数?为什么?
浏览量:1284
时间:2021-03-16 20:16:21
作者:admin
哪些函数能被声明为虚函数?为什么?
非静态成员函数可以声明为虚拟函数。
因为它是对象的一部分
内联函数能不能定义成虚函数啊?
函数不能既是虚拟函数又是内联函数。严格地说,即使可以创建内联虚拟函数,或者将虚拟函数声明为内联函数,编译器也不会内联展开此类函数,而是将其视为普通函数。编译器拒绝展开非虚拟内联函数。C编译器通常首先报告一个错误:“inline interrupt-function too large”。如果内联函数调用自身,或将其地址传递到某处,则编译器必须生成一个普通(内联)函数。对于内联虚拟函数,编译器将它们视为普通虚拟函数。最好不要在应用程序中使用内联虚拟函数,因为它们几乎从未扩展过。实际上,开发人员通常在类声明中放置一个简短的虚函数。这样做的目的不是将函数扩展为内联函数,而是使程序更加方便和可读。
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。