sor*_*rin 4 c++ boost alignment memory-alignment
我发现,艰难的方式,至少boost::program_options是依赖于编译器配置的结构成员对齐.
如果使用默认设置构建boost并使用4字节alignment(/Zp4)将其链接到项目,则它将在运行时失败(使用program_options进行最小测试).Boost将生成一个断言,指示可能的错误调用约定,但真正的原因是结构成员对齐.
有什么方法可以防止这种情况吗?如果对齐使得代码不兼容,那么它是否应该包含在库命名中?
| 归档时间: |
|
| 查看次数: |
531 次 |
| 最近记录: |