我在 C++ 中使用 libconfig。为了消除周围的复杂性,我阅读了配置并更改了一些设置。现在我想获取该 Config 对象的副本并对原始对象和副本进行独立更改。我怎样才能做到这一点?
从 libconfig文档:
请注意,根据设计,这些类都不提供公共复制构造函数或赋值运算符
所以 C++ libconfig API 没有提供直接复制的机制,可能是因为它是一个涉及内存分配的重要操作。然而,它也不支持写入字符串,尽管它支持从字符串中提取。我能找到的唯一解决方案是将其写入一个临时文件(或使用fmemopen打开的文件),然后再次将其读回。
有没有更好的办法?它不需要跨平台或符合标准,Centos x86-64 就可以了。