我想在 C++ 中创建一个类似于 NSMutableDictionary 的类。我可以使用哪种数据类型,或者是否有任何免费的 C++ 库可用。
我不能使用 std::map,因为它只存储同类数据...我想存储异构数据,我可以使用 Boost 库。 boost 库中的哪个类( list here )做了类似于 NSMutableDictionary 的操作。
最佳答案
NSMutableDictionary
在 C++ 中没有完全等价的,但是 std::map 可能是您可以充分利用的内容。
原因:
NSMutableDictionary
具有内置的引用计数内存管理,而如果它们是指针,则没有任何 STL 容器类拥有所包含对象的所有权。
因此,等效的 C++ 最多只能为您提供一个 sdt::map,您可以在其中存储指向您的对象的智能指针。
编辑:对于您扫描的异构数据项,请使用 boost::any 与 std::map .
关于c++ - 类类似于c++中的NSMutableDictionary,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6649019/