首页 > 试题广场 >

下面哪些函数不能被声明为虚函数( &nb...

[不定项选择题]
下面哪些函数不能被声明为虚函数(      )
  • 构造函数
  • 静态成员函数
  • 内联函数
  • 友元函数
构造函数:
构造函数用来创建一个新的对象,而虚函数的运行是建立在对象的基础上,在构造函数执行时,对象尚未形成,所以不能将构造函数定义为虚函数。
内联函数:
内联函数是在编译时期展开,而虚函数的特性是运行时才动态联编,所以两者矛盾,不能定义内联函数为虚函数。但是由于属于编译器的建议机制,所以其实可以virtual。
静态成员函数:
静态成员函数属于一个类而非某一对象,没有this指针,它无法进行对象的判别。
友员函数
友员函数不是类的成员函数,C++不支持友员被继承,所以不能为virtual。
猜测本题应该选择 能 被声明为虚函数。



编辑于 2019-09-22 15:40:24 回复(0)
S13题目,显然是静态成员函数不能被定义为virtual
发表于 2019-09-04 18:32:42 回复(0)
发表于 2019-10-09 11:34:41 回复(0)
友元函数也不可以为虚函数吧
发表于 2019-09-17 10:56:17 回复(0)