![]() |
1
3
您应该使用boost::variant或boost::any。这就是他们的目的。使用它们并不意味着你必须模板你的整个解决方案。此外,如果您不需要类型之间动态的、运行时的差异,那么这就是模板的用途。正确工作的正确工具-这是静态方差的模板,动态方差的boost::variant。你没有必要也没有理由使用自己的动态打字系统。
|
![]() |
2
2
听起来你是在试图重新实现一个变体。你看过B吗 oost::Any 在模板前面,模板化50%的解决方案没有问题。它很好地解决了你面临的问题。模板特征是一个很好的发明:
然后typedef允许您毫无顾忌地使用包含的对象,而不必担心某些东西不知道它是什么变量类型。 |
![]() |
3
0
据我所知,类型和值在同一个结构中,VARIANT。 您应该在win sdk和ATL(CComVariant)中找到它们。 例如。:
|
![]() |
rookie · 检查函数模板的所有参数包参数是否属于int 1 年前 |
![]() |
ivaigult · -W转换和隐式字符串到布尔类型转换 1 年前 |
![]() |
rainer · 后台插入程序的初始化 1 年前 |
![]() |
Community wiki · 以理智、安全和高效的方式复制文件 1 年前 |
|
Shefali Kanaujia · 对C中向量的向量进行排序++ 1 年前 |
|
Ma Joonyoung · 粗粒度和细粒度链表的时间比较 1 年前 |