gpt4 book ai didi

c++ - 无法访问 std::move(...) C++ 11

转载 作者:塔克拉玛干 更新时间:2023-11-03 07:25:31 26 4
gpt4 key购买 nike

我想使用 std::move<utility> 中发挥作用.因此,我将它与所有其他代码一起放在代码的顶部。但是,当我使用 move 函数时,eclipse 将其下划线显示为红色,并且无法编译。我知道我使用的是 C++ 11,因为我可以声明移动构造函数,但是,这是行不通的。我正在使用 GCC 进行编译,并且使用了 -std=c++11 选项。我也把它放在我的链接器中。在那之前#include <utility>不会出现。我还需要添加其他内容吗?

这是基本问题。 std::move(...) 似乎没有被定义。

#include <utility>
#include <vector>

int main()
{
std::vector<int> v1;
std::vector<int> v2;
v1 = std::move(v2); // Function move could not be resolved.
return 0;
}

这里还有我在编译器上设置的选项 -O3 -g3 -Wall -c -fmessage-length=0 -std=c++11

最佳答案

您的代码没问题。但是你应该将你的 gcc 更新到最新版本。 Gcc 4.7.2 没有从 c++11 标准实现的所有内容。

关于c++ - 无法访问 std::move(...) C++ 11,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19921006/

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