我想创建一个火车向量,其中每个火车都需要一个对向量。
如果我在 main(( 之外运行代码,我会收到以下错误:
朴素贝叶斯.cpp:17:15:错误:模板参数 1 无效 矢量<对>对;朴素贝叶斯.cpp:17:15:错误:模板参数 2 无效对>
在main()
里面,我得到这些错误:
朴素贝叶斯.cpp:22:15:错误:"模板<类>的模板参数类 std::分配器' 使用本地类型 'main((::p air' 矢量<对>对;朴素贝叶斯.cpp:22:15:错误:尝试实例化"模板<类>类 std::分配器"朴素贝叶斯.cpp:22:15:错误:模板参数 2 无效类>对>类>
这是代码:
struct pair {
int index;
int value;
};
struct trains {
string label;
vector<pair> pairs;
};
你的问题可能是由于using namespace std;
.
标准库中有一个std::pair
类型。
试试这个:
#include <string>
#include <vector>
struct pair {
int index;
int value;
};
struct trains {
std::string label;
std::vector<pair> pairs;
};
int main()
{
return 0;
}
如果没有完整的程序示例可供使用,我只能真正指出的是,您的本地pair
声明可能会与std::pair
混淆。 将struct pair
的定义更改为struct mypair
。