gpt4 book ai didi

c++ - eclipse 中的 unique_ptr 自动完成

转载 作者:IT王子 更新时间:2023-10-29 00:33:14 27 4
gpt4 key购买 nike

我正在玩 unique_ptr。在我的 last post人们通过在编译期间指定 -std=c++0x 帮助我编译了一个使用此指针的程序。现在我想知道是否有任何方法可以指示 eclipse 在自动完成时考虑 c++11?
unique_ptr 不在 std::命名空间的列表中,我也找不到与 unique_ptr 关联的方法(重置、移动...)。

谢谢瓦赫德

最佳答案

“内存”头文件(可能位于/usr/include/c++/4.9/memory)仅包含“unique_ptr.h”和“shared_ptr.h”(可能位于/usr/include/c++/4.9/bits/unique_ptr.h 和/usr/include/c++/4.9/bits/shared_ptr.h)如果宏“__cplusplus”等于或大于“201103L”。亲自检查 memory.h 以查看第 69 行处的“#if”预处理器条件(或搜索字符串“#if __cplusplus >= 201103L”)。

正如其他人提到的,使用“-std=c++0x”或更高版本的 c++ 标准(-std=c++11 或 -std=c++14)进行编译可以解决编译错误,但不能解决 eclipse 索引和自动完成问题。

为了解决 eclipse 索引问题,我在项目构建属性中添加了“__cplusplus”预处理器宏,值为“201103L”,之后我刷新了索引;

添加预处理器宏:

“在项目资源管理器上右击项目”>>属性>>C/C++通用>>预处理器包括>>条目>>GNU C++>>CDT用户设置条目>>添加...>>预处理器宏;

然后输入名为“__cplusplus”和值为“201103L”的宏;

然后,要刷新索引,请执行以下操作:

“在项目资源管理器上右击项目”>>索引>>重建;

Ps.: 我在 ubuntu 15.04 64 位上使用 gcc 4.9.2 和 eclipse Luna (4.4.2)

关于c++ - eclipse 中的 unique_ptr 自动完成,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9766936/

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