编程问答主要分享关于程序编程常见的语言代码内容,提供给你更好的解决编程代码过程中的问题。
为了获得中心,我尝试将每个顶点添加到总数中,然后除以顶点数. 我也试过找到最上面、最下面 -> 找到中点...找到最左边、最右边,找到中点.
我有一个指向对象的指针向量.我需要从向量中删除一个元素并将该元素放在另一个列表中.
我知道标准不会强制std::vector分配连续的内存块,但所有实现都遵守这一点. 假设我想创建一个多维静态数组的向量.为简单起见,考虑 2 个维度,以及一个长度为 N 的向量.也就是说,我希望创建一个包含 N 个元素的向量
我有一个 vector
假设我有一个包含 N 个元素的向量,但是这个向量中最多有 n 个元素具有有意义的数据.一个更新线程更新第 n 个或第 n+1 个元素(然后设置 n = n+1),还会检查 n 是否太接近 N 并在必要时调用 vector::resize(N+M).更新
我可以在 C++ 中创建一个 unordered_set 向量吗?像这样 std::unordered_set<std::vector<int>> s1;
我有大量但可能不同的对象同时写入.我想用互斥锁保护该访问.为此,我以为我使用了 std::vector,但这不起作用,因为 std::mutex 没有副本或移动构造函数,而 std::vector::resize() 需要.
我遇到了一个小问题.我有一个结构体,它有一个向量.请注意,向量在每次迭代中都是动态的.现在,在特定的迭代中,如何将包含大小为 n 的向量的结构存储到二进制文件中?
我有一个包含很少非相邻重复项的向量. 举一个简单的例子,考虑: 2 1 6 1 4 6 2 1 1
我是第一次使用 STL 库中的向量类.我应该如何添加到向量数组的特定行? struct x{
我想对向量中的项目重新排序,使用另一个向量来指定顺序: charA[]= { \'a\',\'b\',\'c\' };
之前有一些关于这个问题的问题;我的理解是调用 std::vector::erase 只会使位于被擦除元素之后的迭代器无效.但是,擦除元素后,该位置的迭代器是否仍然有效(当然,前提是擦除后它不指向 end())?
我是一名编程学生,对于我正在进行的一个项目,我必须做的事情之一是计算 int 值向量的中值.我将仅使用 STL 中的排序函数和向量成员函数(例如 .begin()、.end() 和 .size>)来执行此操作().
为什么 pop_back() 没有返回值?我在谷歌上搜索过这个,发现它更有效.这是在标准中这样做的唯一原因吗?
为了安全地清理std::vector 或std::list 的指针,你能想到的最短的C++ 块是什么?(假设您必须在指针上调用 delete ?)
我正在处理用户定义数量的位(我持有一个三维位数组,因此大小呈三次增加 - 假设不少于 512 位),并且需要单独翻转它们.现在,就在计算机上,我使用 bool 类型,因为内存不是问题.我确实计划将来将代码移至微控制器,
使用默认构造函数创建的 std::vector 的 capacity() 是多少?我知道 size() 为零.我们可以声明默认构造的向量不会调用堆内存分配吗?
如何创建二维矢量?我知道在二维数组中,我可以这样表达: a[0][1]=98; a[0][2]=95; a[0][3]=99;
目标是访问字符串向量的第 n 个\"元素,而不是使用 [] 运算符或at\"方法.据我了解,迭代器可用于在容器中导航,但我以前从未使用过迭代器,而且我正在阅读的内容令人困惑.
这是我的交换函数: template <typename t> void swap (t& x,t& y) { t temp = x; x = y; y = temp;
我知道 std::vector 在内部连续地存储它的数据(除非它是 std::vector),都在旧的中>C++03 标准和新的C++11.
我发现这个 C++ 代码: vector<int> a; a.push_back(1); a.push_back(2); vector<int>::iterator it = a.begin();
我正在尝试用 C++ 制作一个可以存储 3 种不同数据类型的向量.我不想使用 boost 库.类似的东西: