我正在尝试使用 C++11,但 Eclipse 遇到了一些问题。我已经使用 macports 来获取 gcc48,并且我已经按照各种指南让 eclipse 使用新的编译器,包括this、this,并且我还将编译器命令从 eclipse 标准更改为 g++-mp-4.8正如这里所解释的
我正在尝试构建以下程序:
#include <iostream>
#include<memory>
using namespace std;
int main() {
std::unique_ptr<double> ptr(new double);
*ptr = 11.345;
cout << (*ptr) << endl;
return 0;
}
终端会很好地编译这个,
make all
Building file: ../src/C++11.cpp
Invoking: Cross G++ Compiler
/opt/local/bin/g++ -I/opt/local/bin -I/opt/local/include -O0 -g3 -Wall -c -fmessage-length=0 -std=c++0x -MMD -MP -MF"src/C++11.d" -MT"src/C++11.d" -o "src/C++11.o" "../src/C++11.cpp"
Finished building: ../src/C++11.cpp
Building target: C++11
Invoking: Cross G++ Linker
g++ -o "C++11" ./src/C++11.o
Finished building target: C++11
并且程序按预期运行。但是,在 Eclipse 中,我仍然收到错误消息Symbol 'unique_ptr' could not be resolved
。
我想继续使用 eclipse,而不仅仅是项目经理和 makefile 构建器,所以对此的任何帮助将不胜感激!