作者热门文章
- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我正在使用 boost::any
来存储指针,想知道是否有一种提取多态数据类型的方法。
这是一个简单的示例,说明理想情况下我想做什么,但目前行不通。
struct A {};
struct B : A {};
int main() {
boost::any a;
a = new B();
boost::any_cast< A* >(a);
}
这失败了,因为 a 正在存储一个 B*,而我正在尝试提取一个 A*。有办法实现吗?
谢谢。
最佳答案
Boost.DynamicAny 是 Boost.Any 的变体,它提供更灵活的基础类型动态转换。从 Boost.Any 中检索值需要您知道存储在 Any 中的确切类型,而 Boost.DynamicAny 允许您动态转换为持有类型的基类或派生类。
关于c++ - Boost::any 和多态性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1088689/
我来自 Asp.Net 世界,试图理解 Angular State 的含义。 什么是 Angular 状态?它类似于Asp.Net中的ascx组件吗?是子页面吗?它类似于工作流程状态吗? 我听到很多人
我一直在寻找 3 态拨动开关,但运气不佳。 基本上我需要一个具有以下状态的开关: |开 |不适用 |关 | slider 默认从中间开始,一旦用户向左或向右滑动,就无法回到N/A(未回答)状态。 有人
我是一名优秀的程序员,十分优秀!