|
|
1
3
只需使用虚拟函数即可。而不是这个:
这样做:
|
|
2
3
然后实现访客界面并调用
访客将获得控制权,然后可以执行适当的操作。如果你需要在本地使用正确类型的变量,那么你很难找到合适的方法。但我认为,使用虚拟函数将控制驱动到特定的实现通常是解决这个问题的一个好方法。 |
|
|
3
2
我是否可以建议使用Boost::Variant,它基本上是多个类型的并集(Variant类型的对象可以容纳Ti(1<=i<=n)类型的任何对象)。 使用这个,你不必使用继承。 看见 there 了解更多信息。 |
|
|
4
0
你能解释一下原因吗? 真的有必要投吗?多态函数可以投入使用。 或者,您可以拥有一个模板化的令牌类(对某些令牌类具有默认行为),并对其余的令牌类进行专门化。 |
|
|
5
0
这是一个令人讨厌的问题,尽管我更倾向于使用RTTI的版本。 不是新的C++编译器(我上次在VC 6中尝试过,当它没有真正支持的时候)假设Type ID操作符,这样你就不需要一个完整的动态转换了吗? |
|
AstralHex · 矩阵乘法代码工作不正常 1 年前 |
|
|
Fishie · 作为类成员的智能指针是否仍然自动释放?[关闭] 1 年前 |
|
|
Die4Toast · 递归调用成员箭头运算符-> 1 年前 |
|
|
Anka Hanım · 关于结构和动态数组地址的问题 1 年前 |