问题标签 [stdvector]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - 从方法返回对向量的引用并使用其公共成员
我有一个t_vec
存储对 class 实例的引用的向量Too
。代码如下所示。在 中main
,我有一个向量 t_vec_2,它的内存地址与B::t_vec
.
但是当我尝试访问 t_vec_2[0].val1 时,它给出了错误val1 not declared
。
你能指出什么是错的吗?另外,如果您知道从方法返回向量的更好方法,请告诉我!提前致谢。
c++ - 向量相关的内存分配问题
我遇到以下错误。
- 我有一堂课
Foo
。此类的实例存储在 std::vectorvec
中class B
。 - 在 Foo 类中,我通过
new
在~Foo()
.
代码编译,但我在运行时崩溃。如果我禁用delete my_a
类的析构函数Foo
。代码运行良好(但会有内存泄漏)。
有人可以解释这里出了什么问题并提出修复建议吗?
谢谢你!
c++ - 使用擦除删除标准向量的元素对象:a)内存处理和b)更好的方法?
我有一个vec_A
将实例存储class A
为:vec_A.push_back(A());
我想在稍后阶段删除向量中的一些元素并且有两个问题:a)元素被删除为:vec_A.erase(iterator)
是否需要添加任何其他代码以确保没有内存泄漏?.
b) 假设条件if(num <5)
是 num 是否在特定的 numberList 中。鉴于此,有没有比我在下面说明的更好的方法来删除向量的元素?
c++ - C++ 用户定义向量
如何在 C++ 中声明一个向量,同时允许用户输入定义向量的名称?好的,在查看您的回复后,这里有更多详细信息;这是来自 VS08 C++ 控制台应用程序的错误消息 -
这是代码:
c++ - 传递类方法而不是 std::sort 中的函数
在一个类中,我试图通过传递同一类的方法来对向量进行排序。但它在编译时会出错。谁能告诉问题是什么?谢谢!
它给出了以下错误:bool (Sorter::)(D&, D&)' does not match
bool 类型的参数 (Sorter::*)(D&, D&)'
我也尝试过使用sortBynumber(D const& d1, D const& d2)
dll - 包含向量的结构大小DLL 和 EXE 的大小不同
我有这种情况,EXE 程序为单个函数调用导入 DLL。它通过传入自定义结构并返回不同的自定义结构来工作。到目前为止,它工作得很好,直到我希望结构数据成员之一成为向量 < MyStruct >
当我在我的程序中执行 sizeof(vector< MyStruct >) 时,我得到的大小为 20,但是当我从 DLL 内部执行时,我得到的大小为 24。这种大小不一致导致 ESP 指针错误。
谁能告诉我为什么 DLL 中的 Vector < MyStruct > 的大小与程序中的大小不同?
我已经重新验证了我在 DLL 和程序中的结构是相同的。
我将不胜感激有关该主题的任何帮助。谢谢你。
c++ - 重复符号、SWIG 和 C++ 向量的链接器错误
我在尝试从 2 组对象编译共享对象时遇到了这个错误。第一个集合包含一个从 SWIG 生成的 cpp 文件编译的 .os 对象。第二组包含构成要包装的接口的各个文件中的所有 .so 文件。
swig c++ 包装器(Mathlib_wrap.o 的源文件)是机器生成的,看起来很难看,有很多#defines 使它更难追踪。看起来重新定义存在于第二组中的所有目标文件中。我已经跟踪了所有这些文件中包含的标题,并且似乎是#pragma once'd。
人们对追查问题出在哪里/在哪里有什么建议?
visual-c++ - std::vector 的奇怪行为
我有这样的课:
这是我的代码的简化版本。问题是在调试模式下它工作得很好。但在发布模式下,它会在“push_back”行崩溃。(所有优化标志都关闭)我在发布模式下调试它,问题出在A的构造函数中。向量的大小对于虚拟值来说非常大,当我清除它时,它不会改变......
你知道为什么吗?
谢谢,
c++ - std::multimap 和 std::vector 之间的交叉?
我正在寻找一个像 std::multimap 一样工作的 STL 容器,但对随机第 n 个元素具有恒定的访问时间。我需要这个,因为我在内存中有这样的结构,即 std::multimap 出于多种原因,但存储在其中的项目必须在列表框中呈现给用户。由于数据量很大,我正在使用带有虚拟项目的列表框(即列表控件轮询第 X 行的值)。
作为一种解决方法,我目前正在使用额外的 std::vector 将“索引”存储到 std::map 中,我这样填充它:
但这不是很优雅的解决方案。
有这样的容器吗?
c++ - 为什么在 C++ 中找不到向量
有什么选择?
我应该自己写吗?