小编Ell*_*lle的帖子

c ++开关与成员函数指针与虚拟继承

我试图分析实现多态的各种方法之间的权衡.我需要一个对象列表,它们在成员函数中有一些相似之处和一些差异.我看到的选项如下:

  1. 每个对象都有一个标志,每个函数都有一个switch语句.标志的值将每个对象定向到每个函数的特定部分.
  2. 在对象中有一个成员函数指针数组,这些指针在构造时分配.然后,我调用该函数指针以获取正确的成员函数.
  3. 有一个带有几个派生类的虚基类.这样做的一个缺点是我的列表现在必须包含指针,而不是对象本身.

我的理解是,由于成员函数的保证接近,选项3中列表中的指针查找将比选项2的成员函数查找花费更长的时间.

这些选项有哪些优点/缺点?我的首要任务是性能优于可读性.有多态的其他方法吗?

c++ inheritance pointers

5
推荐指数
1
解决办法
2242
查看次数

标签 统计

c++ ×1

inheritance ×1

pointers ×1