首页
题库
面试
求职
学习
竞赛
More+
所有博客
搜索面经/职位/试题/公司
搜索
我要招人
去企业版
登录 / 注册
首页
>
试题广场
>
请你说说虚函数可以是内联函数吗
[问答题]
请你说说虚函数可以是内联函数吗
添加笔记
求解答(0)
邀请回答
收藏(75)
分享
纠错
13个回答
添加回答
19
angkoryy
没有多态性质时也不会用虚函数啊
发表于 2022-07-21 14:52:44
回复(0)
5
OreoYuuri
有意思
发表于 2022-05-03 01:16:20
回复(0)
3
学不明白
内联是在编译期建议编译器内联,而虚函数的多态性在运行期,编译器无法知道运行期调用哪个代码,因此虚函数表现为多态性时不可以内联。
发表于 2022-07-31 14:32:53
回复(0)
1
hcodeboy
虚函数可以是内联函数,内联是可以修饰虚函数的,但是当虚函数表现多态性的时候不能内联。
发表于 2023-08-11 20:29:21
回复(0)
1
清鸿y
可以是,但是内联之后不能表现出虚函数的多态性,因为虚函数的多态性是在运行期,内联函数是在编译器,所以编译器不能知道运行期间调用那个代码
发表于 2023-01-30 10:03:01
回复(0)
0
_helios_
1. 虚函数可以是内联函数,内联是可以修饰虚函数的,但是当虚函数表现多态性的时候不能内联。 2. 内联是在编译期建议编译器内联,而虚函数的多态性在运行期,编译器无法知道运行期调用哪个代码,因此虚函数表现为多态性时不可以内联。 3. inline virtual 唯一可以内联的时候是:编译器知道所调用的对象是哪个类,这只有在编译器具有实际对象而不是对象的指针或引用时才会发生。
发表于 2024-05-21 09:47:23
回复(0)
0
vwei
虚函数可以是内联函数,但是当虚函数表现多态性的时候不能内联。内联是在编译期建议编译器内联,而虚函数的多态性是在运行期呈现的,编译器无法知道运行程序时调用的是哪部分代码,所以虚函数有多态性的时候不可以内联。
编辑于 2024-04-09 14:26:28
回复(0)
0
荔枝Elizabeth
内联函数是为了在代码中直接展开,减少函数调用花费的代价,虚函数是为了在继承后对象能够准确的执行自己的动作,这是不可能统一的。(inline)内联函数是在编译时期展开,而虚函数的特性是运行时才动态联编,所以两者矛盾,不能定义内联函数为虚函数
编辑于 2024-04-08 20:56:59
回复(0)
0
代码要笑着写
不可以,虚函数是用于多态实现的,父类指针指向的对象可能是子类,用父类指针调用虚函数取决于虚函数表中的函数地址是父类虚函数函数地址还是子类虚函数函数地址;而内联函数会在编译阶段就替换函数调用的地方为函数体,虚函数是在运行的时候决定的,所以不能替换
发表于 2024-03-28 16:44:11
回复(0)
0
Guojiahui
内联函数可以是虚函数,在动态多态得时候不能是
编辑于 2024-03-18 21:35:22
回复(0)
0
学吧孩子
内联函数:为避免一些简单函数的重复调用所花费的额外开销,建议编译器在调用该函数时将函数直接在调用处展开。正常来讲,当虚函数所执行的操作符合上述条件,也是可以被内联修饰的。 当虚函数被用来实现多态时是不可以被修饰为内联函数的,因为此时虚函数并不知道在运行期调用哪个代码,所以不可内联。
发表于 2024-03-18 21:04:51
回复(0)
0
雏鹰划空
1. inline virtual 合法:但是应用场景是,编译器知道这个虚函数会调用那个函数,也就是,此时的虚函数没有表现出多态性。 2. inline是编译其起作用,virtual是运行时起作用。 3. inline只是起到建议的作用,最终是否按照内联函数展开,还是得编译器决定
发表于 2023-11-11 09:30:41
回复(0)
0
牛客491461653号
可以 内联函数不能表现出多态性
发表于 2022-05-18 14:38:11
回复(0)
这道题你会答吗?花几分钟告诉大家答案吧!
提交观点
问题信息
C++
上传者:
real19931
难度:
13条回答
75收藏
900浏览
热门推荐
相关试题
运行 ldd hello 可以得到...
百度
C++
评论
(3)
1.该校教师最多的是哪一年?( ...
资料分析
言语理解与表达
资料分析
评论
(1)
有同事不完成任务,影响力进度,你怎...
业务综合
评论
(1)
你身边有哪些人还没有使用滴滴,你认...
用户研究
评论
(1)
怎么做一个需求
需求分析
评论
(1)
扫描二维码,关注牛客网
意见反馈
下载牛客APP,随时随地刷题