自定义对象的dlib序列化在gcc中失败
dlib serialization on custom object fails in gcc
我在命名空间中定义了一个类。我创建了dlib所需的序列化/反序列化方法,使其在命名空间之外可序列化。它在使用VC++的Windows上运行良好,但在使用gcc的Ubuntu中则不然,显示了一个编译错误,称找不到该方法。当我从类中删除名称空间时,序列化工作正常。
这是第一个问题,因为我不知道为什么它在一个编译器中有效,而在另一个编译器不有效,而且我更喜欢给类留一个名称空间。
另一个问题是,我需要序列化一个不能没有命名空间的类,所以我需要让它与它一起工作
欢迎任何想法,如果需要更多信息,我可以提供。
我已经解决了这个问题。问题是我在要序列化的类的命名空间之外声明了序列化/反序列化函数。我不知道为什么它能在VC++上工作,但现在它能在两个编译器中工作。
相关文章:
- gcc和c++17的过载解析失败
- 使用 GCC 卸载的 OpenMP 卸载失败,并出现"Ptx assembly aborted due to errors"
- 自定义对象的dlib序列化在gcc中失败
- GCC 4.8.2 自动矢量化由于 cout 而失败
- 调试模板时出现问题.专门针对 Linux GCC 7、GCC 6、GCC 5、GCC 4.9 错误构建失败:模板参数 1
- C++正则表达式失败(GCC vs Microsoft 编译器)
- 带有引用的std::tuple在clang中编译失败,但在gcc中编译失败
- thread_local静态成员模板定义:初始化失败,GCC
- C++指向成员的指针的类内初始化会使 MSVC 失败(但 GCC/Clang 工作)
- 在 GCC 中工作的外行构造函数模板在 Clang 中失败
- enable_if is_same constexpr函数使MSVC失败(但在Clang,GCC中效果很好)
- GCC 模板参数推断/替换失败
- 为什么这段代码在Visual Studio中有效,但在gcc中失败
- 为什么将 lambda 用于非类型模板参数时 gcc 失败?
- 匿名结构可提高函数转换在GCC 5.4上失败
- 线性重载:为什么 clang 在 GCC 编译时失败?
- enable_if的模板专用化在 Clang 中失败,适用于 GCC
- 错误:命令"GCC"失败,退出状态为 1,正在安装 PyMix
- c++ 中带有容器迭代器的循环类型依赖关系(GCC 失败,而 MSVC 正常)
- 如何修复错误:命令'x86_64-linux-gnu-gcc'失败,退出状态为 1