无法从指针访问映射成员
这是我的第一个问题 :) 我将程序的配置存储在 Group->Key->Value 形式中,就像旧的 INI 一样。我将信息存储在一对结构中。 第一个,我使用带有 string…
C++长长的 switch 语句还是用地图查找?
在我的 C++ 应用程序中,我有一些值充当代表其他值的代码。为了翻译代码,我一直在争论使用 switch 语句还是 stl 映射。开关看起来像这样: int code;…
为什么没有像我期望的那样使用映射调用复制构造函数?
我在使用带有 std::map 的自定义类时遇到问题。该类动态地为成员分配内存,我不想在映射中使用指针,因为我想确保该类负责删除所有分配的内存。但我遇…
删除 std::map (Visual C++)
我有一个指向我试图删除的地图的指针(该地图已分配新的)。 我认为这张地图是有效的,当我在调试时将鼠标悬停在它上面时,它显示 pMap: [0]() .. 当…
Boost.Bind 访问 std::for_each 中的 std::map 元素
我有一个映射,它存储一个带有键的简单结构。该结构体有两个成员函数,一个是 const,另一个不是。我已经成功地使用 std::for_each 调用 const 函数,…
无法创建 MoveConstructibles 地图
我有一个包含 std::unique_ptr 中。我认为推动 C++ 引入移动语义的原因之一是可以将 unique_ptrs 之类的东西放入标准容器中(对于向量而言,这确实有…
是否不可能将 STL 映射与结构体作为键一起使用?
我有以下代码: struct Node { int a; int b; }; Node node; node.a = 2; node.b = 3; map aa; aa[1]=1; // OK. map bb; bb[node]=1; // Compile erro…
如何初始化 std::map 一次以便它可以被类的所有对象使用?
我有一个枚举 StackIndex 定义如下: typedef enum { DECK, HAND, CASCADE1, ... NO_SUCH_STACK } StackIndex; 我创建了一个名为 MoveSequence 的类,…
std::map 的浅/深副本
我如何最好地实施这些?我想到了这样的事情: using namespace std; shape_container shape_container::clone_deep () const { shape_container* ptr …
如何查找给定的键是否存在于 std::map 中
我正在尝试检查给定的键是否在地图中,但有些无法做到: typedef map::iterator mi; map m; m.insert(make_pair("f","++--")); pair p = m.equal_rang…
如何获取 std::map 的前 n 个元素
由于 C++ std::map 中没有 .resize() 成员函数,我想知道如何获得最多包含 n 个元素的 std::map 。 显而易见的解决方案是创建一个从 0 到 n 的循环,…
如何设置以 string 作为键、ostream 作为值的映射?
我尝试按以下方式在 C++ 中使用 map 容器:键是 string,值是 ofstream 类型的对象。我的代码如下所示: #include #include #include #include using …
为什么我不能将引用存储在 C 中的 `std::map` 中?
我知道引用不是指针,而是对象的别名。但是,我仍然不明白这对我作为程序员到底意味着什么,即幕后的引用是什么? 我认为理解这一点的最好方法是理解…