gpt4 book ai didi

python - Python 的 Visual C++ 无法处理 c++11 错误 C2039: 'data':不是 std::vector 的成员

转载 作者:行者123 更新时间:2023-11-30 00:47:44 24 4
gpt4 key购买 nike

使用python setup.py install遇到编译错误,报错如下:

 : error C2039: 'data' : is not a member of 'std::vector<_Ty>'
with
[
_Ty=unsigned int
]

Microsoft Visual 有一个适用于 Python 的 VC++,它使用 Visual C++ 2008,它不支持 c++11(我认为这部分代码需要它才能工作。

std::vector<unsigned> tab((m + 1) * 2);
unsigned *cur = tab.data(), *prev = tab.data() + m + 1;

对于这部分代码,或者通过强制 python 安装使用 MV C++ 2015,是否有任何解决方法。

完整代码在这里:https://github.com/semanticize/leven/blob/master/leven/levenshtein_impl.h

最佳答案

std::vector 保证连续存储其数据,因此您只需获取其第一个元素的地址即可:

unsigned *cur = &tab[0], *prev = &tab[0] + m + 1;

或者这样会更清楚:

unsigned *cur = &tab[0];
unsigned *prev = cur + m + 1;

关于python - Python 的 Visual C++ 无法处理 c++11 错误 C2039: 'data':不是 std::vector 的成员,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34070305/

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