c++ - 结构中指针的动态数量

标签 c++ dynamic struct

friend

我有一个包含指针的结构。不同的指针将连接到不同的数据类型。问题是我不知道当前结构将连接到多少,以及这些数据结构是什么。

例如,

struct root
{
  branch1 *a;
  branch2 *b;
  branch3 *c;
  /// ...
};

Branch1、2、3 本身是不同的结构。但我现在不知道我将根连接到多少个分支 1、2、3。因此,如果稍后我知道根将连接到多少,是否有一种方法可以动态地将额外的指针引入结构中?

让我更具体一点。 根是不同逻辑门之间的连线。 分支 1、2、3 实际上指向由这条线驱动的门。 由于有不同的门(不同数量的输入,不同的功能),我现在不知道电线的扇出是多少。

----------------我目前的做法---------------------------- -----

在我按照一些 friend 的建议去使用一些成熟的数据结构比如vector之前,

目前我正在尝试使用一些固有的类和多态性来实现。

所有电线都是基础电线固有的,但扇出不同

所有门都是从具有最大输入数量的基门继承而来的,固有门使用其中的一些来实现门功能

我还在努力。

最佳答案

看看这个http://www.parashift.com/c++-faq/heterogeneous-list.html 归结为例如std::vector<boost::shared_ptr<BranchBase>>

关于c++ - 结构中指针的动态数量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11595115/

相关文章:

c++ - 使用 MODULEENTRY32 和 MODULEINFO,在单独的进程中扫描特定 INT 值的步骤是什么?

c++ - 在 Tile Map 上绘制 Sprite

.net - 使用 Automapper 从动态复制属性

c++ - 这个结构声明有什么问题?

c++ - 从内存缓冲区创建 HBITMAP

c++ - 升序排序,c++,带 vector

jquery - 使用 jquery 或 ajax 显示/隐藏内容

c# - 使用 Dynamic 或 Reflection.emit

c# - DTO 类与结构

c++ - 为什么在链表中使用指向结构的指针而不是常规的结构类型变量?