由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
JobHunting版 - 问个C++ virtual function的问题
相关主题
C/C++里数组作函数的参数的话应该怎么写?An example of strategy pattern
C++继承问题srand()的问题
微软C++面试题请教一个c的概念题
问个c++的问题请教一个OOP的C++问题
one C++ questionA question about C++. Thanks.
新手问个C++(Thinking in C++ source code)C++ object size一问
amazon的那道题目一个c++题(exception handling)
Interview questions, Bloombergc++ vs Java virtual 实现(Y家)
相关话题的讨论汇总
话题: func话题: public话题: std话题: virtual话题: class
进入JobHunting版参与讨论
1 (共1页)
C***y
发帖数: 2546
1
有没有办法强制基类中定义的pure virtual function在所有的继承类中实现
For example:
class A
{
public:
virtual void func() = 0;
};
class B: public A
{
public:
void func() { std::cout<<"In B"< };
class C: public B
{
public:
void func() { std::cout<<"In C"< };
class C中也必须实现 func,否则报错
y*******g
发帖数: 6599
2
没办法,,因为B已经实现了。 C is a B, 所以没法用A来控制C,这是oo的基本原则
要么用C直接继承A
C***y
发帖数: 2546
3
Thanks!
需要在所有的继承类中加个function,因为继承类很多,所以想让编译器来帮助检查一
下是否有遗漏,看来只能手工检查了

【在 y*******g 的大作中提到】
: 没办法,,因为B已经实现了。 C is a B, 所以没法用A来控制C,这是oo的基本原则
: 要么用C直接继承A

b*****c
发帖数: 1103
4
你将public继承变成protected,
这样C的instance 只能访问C自己的func
y*******g
发帖数: 6599
5
public 改成 protected对设计的变化太大了吧
而且为什么改了就可以?

【在 b*****c 的大作中提到】
: 你将public继承变成protected,
: 这样C的instance 只能访问C自己的func

a********m
发帖数: 15480
6
是说弄成private吧。

【在 y*******g 的大作中提到】
: public 改成 protected对设计的变化太大了吧
: 而且为什么改了就可以?

C***y
发帖数: 2546
7
有没有办法强制基类中定义的pure virtual function在所有的继承类中实现
For example:
class A
{
public:
virtual void func() = 0;
};
class B: public A
{
public:
void func() { std::cout<<"In B"< };
class C: public B
{
public:
void func() { std::cout<<"In C"< };
class C中也必须实现 func,否则报错
y*******g
发帖数: 6599
8
没办法,,因为B已经实现了。 C is a B, 所以没法用A来控制C,这是oo的基本原则
要么用C直接继承A
C***y
发帖数: 2546
9
Thanks!
需要在所有的继承类中加个function,因为继承类很多,所以想让编译器来帮助检查一
下是否有遗漏,看来只能手工检查了

【在 y*******g 的大作中提到】
: 没办法,,因为B已经实现了。 C is a B, 所以没法用A来控制C,这是oo的基本原则
: 要么用C直接继承A

b*****c
发帖数: 1103
10
你将public继承变成protected,
这样C的instance 只能访问C自己的func
相关主题
新手问个C++(Thinking in C++ source code)An example of strategy pattern
amazon的那道题目srand()的问题
Interview questions, Bloomberg请教一个c的概念题
进入JobHunting版参与讨论
y*******g
发帖数: 6599
11
public 改成 protected对设计的变化太大了吧
而且为什么改了就可以?

【在 b*****c 的大作中提到】
: 你将public继承变成protected,
: 这样C的instance 只能访问C自己的func

a********m
发帖数: 15480
12
是说弄成private吧。

【在 y*******g 的大作中提到】
: public 改成 protected对设计的变化太大了吧
: 而且为什么改了就可以?

r****t
发帖数: 10904
13
private pure virtual
d********t
发帖数: 9628
14
哦,很奇怪啊?

【在 C***y 的大作中提到】
: 有没有办法强制基类中定义的pure virtual function在所有的继承类中实现
: For example:
: class A
: {
: public:
: virtual void func() = 0;
: };
: class B: public A
: {
: public:

l*****a
发帖数: 14598
15
你这是什么编译器?
我用Visual studio试了一下,没问题啊
而且C inherited from B and B already implement func()
no problem at all ah

【在 C***y 的大作中提到】
: 有没有办法强制基类中定义的pure virtual function在所有的继承类中实现
: For example:
: class A
: {
: public:
: virtual void func() = 0;
: };
: class B: public A
: {
: public:

d********t
发帖数: 9628
16
我也是这么想的。

【在 l*****a 的大作中提到】
: 你这是什么编译器?
: 我用Visual studio试了一下,没问题啊
: 而且C inherited from B and B already implement func()
: no problem at all ah

r****t
发帖数: 10904
17
his desire, def of "no problem" == compile time error.
your def of "no problem" == compile success.

【在 l*****a 的大作中提到】
: 你这是什么编译器?
: 我用Visual studio试了一下,没问题啊
: 而且C inherited from B and B already implement func()
: no problem at all ah

1 (共1页)
进入JobHunting版参与讨论
相关主题
c++ vs Java virtual 实现(Y家)one C++ question
c++疑难问题。。新手问个C++(Thinking in C++ source code)
select2perform上面C++测试挺头疼的amazon的那道题目
问个c++题Interview questions, Bloomberg
C/C++里数组作函数的参数的话应该怎么写?An example of strategy pattern
C++继承问题srand()的问题
微软C++面试题请教一个c的概念题
问个c++的问题请教一个OOP的C++问题
相关话题的讨论汇总
话题: func话题: public话题: std话题: virtual话题: class