gpt4 book ai didi

c++ - 将 boost python 枚举作为参数传递

转载 作者:太空宇宙 更新时间:2023-11-04 12:16:14 25 4
gpt4 key购买 nike

我定义

enum_<mytype>("mytype")
.value("one",1)
.value("two",2)
;

在我的 BOOST_PYTHON_MODULE 中。

当我公开一个带有接受类型为 mytype 的参数(本质上是一个 int)的函数的类时,例如:

void myfunc(mytype m) {
...
}

我收到以下编译器警告:

取消引用指针“p.2311”(或其他)确实违反了严格的别名规则

现在,它只是一个警告,代码在启用优化的情况下可以完美运行..

我可以安全地忽略警告吗?我错过了什么吗?

谢谢

最佳答案

如果没有看到警告,很难说准确,但很可能是由 some macros from Python headers 引起的.为了安全起见,使用 -fno-strict-aliasing 编译使用 Python(和 Boost.Python)的代码。

关于c++ - 将 boost python 枚举作为参数传递,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7596757/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com