【发布时间】:2009-02-05 07:24:58
【问题描述】:
我已经有一段时间没有用 C++ 编程了,从 python 出来后,我觉得穿着直筒夹克很不错,好吧我不吐槽了。
我有几个函数充当“管道”,接受一个列表作为输入,返回另一个列表作为输出(基于输入),
这是概念上的,但实际上,我使用std::vector 来表示列表,这可以接受吗?
此外,我没有使用任何指针,所以我使用std::vector<SomeType> the_list(some_size);作为变量,并直接返回它,即return the_list;
附:到目前为止一切正常,项目规模很小,这似乎不会影响性能,但我仍然想就此获得一些输入/建议,因为我觉得我正在用 C++ 编写 python。
【问题讨论】:
-
您如何访问列表中的数据?如果您不需要随机访问和连续内存,并且您需要大量插入删除数据,那么链表可能会更好。
-
注意链表(例如 std::list)每个元素的内存开销更高,并且通常仅在最罕见的用例中胜过向量。
-
在我目前的特殊情况下,我实际上需要任意访问......但我想让这个问题很笼统,所以链表听起来是个好建议
-
现在从 C# 返回。很多很多“直筒夹克”+1! :D
标签: c++ arrays memory-management