jje*_*omi 9 c++ compiler-construction vector
编译C++时,我从编译器中得到错误.这是我的代码:
#include <iostream>
#include <algorithm>
#include <typeinfo>
#include <string>
#include <vector>
std::vector< std::vector<char> > p(std::vector<char> v)
{
std::vector< std::vector<char> > result;
std::sort(v.begin(), v.end());
do
{
result.emplace_back(v);
}
while(std::next_permutation(v.begin(), v.end()));
return result;
}
Run Code Online (Sandbox Code Playgroud)
这是我的错误:

知道是什么导致了这个吗?
我正在使用Codeblocks 12.11,Windows 7,我的编译器是GNU GCC Compiler
Thnx的助攻:)
更新:
如果有人碰到同样的问题,这里是解决方案(在Codeblocks 12.11中):
转到:设置 - >编译器 - >编译器设置 - >选中以下复选框:

除此之外,请记住main在代码中使用-function.否则编译器将给出以下错误:

解决方案是由回复我帖子的用户给出的:)
Sho*_*hoe 12
您的编译器不支持C++ 11.该emplace_back成员函数std::vector<T>,因为C++ 11增加了,因为你可以看到.
根据您的编译器版本,您可能只需要一些标志来告诉编译器打开C++ 11的功能.你可以在GCC和Clang上做到:
-std=c++11 -stdlib=libc++
Run Code Online (Sandbox Code Playgroud)
否则,您可能需要将编译器版本更新为更新版本.
| 归档时间: |
|
| 查看次数: |
15692 次 |
| 最近记录: |