unordered-set

    1热度

    1回答

    #include <unordered_set> class C { public: std::unordered_set<int> us; }; int main() { C* c; c->us.insert(2); // Segmentation Fault } 我在做什么错?

    0热度

    1回答

    有人能告诉我为什么这个编译并运行在Visual Studio优良,但却未能编译时分段故障GNU C++编译器 不能为我的生活想出解决办法。我仔细检查了前缀/后缀运算符,并确保迭代器正确放置在条件语句中...我错过了什么?通常我在分配/取消分配动态数组时遇到了这个问题,我在这里没有这样做。 #include <cmath> #include <cstdio> #include <vector>

    4热度

    1回答

    我需要创建一个模板类,它可以保存指向T类型元素的指针,然后对它们执行函数。这些函数来自不同的地方,所以我需要一个容器来存储它们,所以我可以稍后再调用它们。我决定使用std::unordered_set,因为它提供了速度并限制了重复,因为它被实现为散列表。我写了一整个类,但它不编译,因为没有为我的std::function定义的散列函数需要一个类型为T的指针并返回void。使用struct hash

    2热度

    1回答

    我有一个项目列表,每个框架都创建并需要排序。 每个商品的第一个成员变量排序是unordered_set。 我已经把它移到了系统中的一个有序集合,所以我可以在项目列表中对它进行排序。但是我在另一个代码中遇到了性能问题。 请记住,每个项目将被销毁,并在每帧的基础上重新创建,有什么我可以做,以保持这些在unordered_set s和排序呢? class item { public:

    1热度

    2回答

    我试图通过将字符串为unordered_set<string>,然后绕过shared_ptr<string>的以削减字符串复制(已测得为我的应用程序中的性能瓶颈)。很难知道集合中所有对字符串的引用何时被删除,所以我希望shared_ptr可以帮助我。这是未经测试的代码,说明我是多么希望能够把它写: unordered_set<string> string_pool; : shared_ptr<

    3热度

    1回答

    首先,现在boost :: serialization是否支持unordered_set?我没有找到头文件boost/serialization/unordered_set.hpp。 这里是我试图执行代码: namespace boost { namespace serialization{ template<class Archive, typename T, typename H, ty

    0热度

    1回答

    我正在使用单词和标记解析文本文件(看起来像是单词/标记)。我正在尝试在我的文件中查找唯一标记的数量,并使用C++中的无序集来插入标记。然而,我似乎随机得到这个异常:“EXC_I386_GPFLT”插入后(在未定数量的插入之后)插入到我的无序集中。我认为我的内存不足,因为Xcode说我只使用〜300 - 400 KB 这里是我的主要功能: #include <iostream> #include

    1热度

    2回答

    当我尝试的元素插入到一个unordered_set我得到这个错误: error: invalid operands to binary expression ('const Play' and 'const Play') {return __x == __y;} 这里的截图整个错误: https://www.dropbox.com/s/nxq5skjm5mvzav3/Screens

    0热度

    2回答

    我正在使用unordered_set来实现散列表。我无法弄清楚如何使用find函数。运行此代码时,我不断收到seg错误。我知道它是因为find()没有找到一个元素,但它应该。我的问题是我如何正确使用我提供的自定义散列函数的查找? unordered_set<Play*, Play::Hash> hashedData unordered_set<Play*>::iterator got; fo

    -6热度

    1回答

    我使用C++ 11标准的代码转换的这个问题: #include<unordered_set> struct B { int x, y; }; class A { struct hash { std::size_t operator()(int* const a) const { return std::hash<int>