我有一个 std::functions vector ,但它无法编译。如果我这样做:
#include <vector>
#include <functional>
using namespace std;
vector<function> functions;
我得到 注意:需要一个类型,得到“函数”
错误:模板参数 2 无效
。我正在使用 -std=c++11
在 g++ 上进行编译。我怎样才能让它工作?谢谢!
最佳答案
std::function
要求您为其提供将函数表示为模板参数(返回类型、参数类型)所需的其他类型。没有模板参数 std::function
是未定义的,这会给你这里的错误。
因此,在尝试定义包含函数的 vector 之前,您需要先弄清楚函数的类型。
关于c++ - std::functions 错误 vector ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31615856/