是否有 STL 容器或其他东西提供与 Java 的链表或 C# 的数组列表相同的功能?即将不同的类型附加到同一个数组中,如
List.Append(1);
List.Append("I am a string");
List.Append(True);
和像
这样的动态函数List.Resize();
List.GetSize();
等等?
如果没有,您可以使用模板等自己实现一个吗?如果是,怎么做?
最佳答案
使用模板很难实现这一点,因为模板假定成员只有一种类型。在 C++ 中,您必须使用具有公共(public)源的多态性(在 Java 和 C# 中可用作所有类的公共(public)“对象”父级,恕我直言)。
您可以尝试使用 boost 库和 boost::variant
或 boost::any
( choose which one fits your needs )。
关于c# - C++ 相当于 Java 的链表/C# 的数组列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6661493/