avatar
一个inheritance 的问题# Programming - 葵花宝典
i*c
1
如果class A is abstract, class B is not a derived class of A.
下面的code可以运行吗?
A* pa=new B();
avatar
b*n
2
of course not

【在 i*c 的大作中提到】
: 如果class A is abstract, class B is not a derived class of A.
: 下面的code可以运行吗?
: A* pa=new B();

avatar
i*c
3
如果A和B都derive from C, 有可能吗?

【在 b********n 的大作中提到】
: of course not
avatar
r*y
4
no

【在 i*c 的大作中提到】
: 如果A和B都derive from C, 有可能吗?
avatar
N*s
5
if 'new' is overloaded, maybe
if '=' is overloaded, maybe

【在 i*c 的大作中提到】
: 如果class A is abstract, class B is not a derived class of A.
: 下面的code可以运行吗?
: A* pa=new B();

avatar
X*r
6
No, no.
The new operator and operator new are different. Overloading the latter won't
change the return type of the former.
operator = is not even part of function lookup here. This is a declarator
with an initializer.

【在 N**s 的大作中提到】
: if 'new' is overloaded, maybe
: if '=' is overloaded, maybe

相关阅读
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。