如果尝试将函数声明为void some_function(vector<pair<int, int> > theVector),则会收到错误消息(大概是在之后的逗号引起的。)关于如何将向量对与函数传递给函数的任何想法?#include <iostream>#include <stdio.h>#include <stdlib.h>#include <vector>void someFunc(int x, int y, vector<pair<int, int> > hello);int main(){ int x = 0; int y = 5; vector<pair<int, int> > helloWorld; helloWorld.push_back(make_pair(1,2)); someFunc(x,y,helloWorld);}void someFunc(int x, int y, vector<pair<int, int> > hello){ cout << "I made it." << endl;}错误:尚未声明“向量” 最佳答案 您需要为vector,pair,make_par提供完整的命名空间,它们来自std命名空间:void someFunc(int x, int y, std::vector<std::pair<int, int> > hello);int main(){ int x = 0; int y = 5; std::vector<std::pair<int, int> > helloWorld; helloWorld.push_back(std::make_pair(1,2)); someFunc(x,y,helloWorld); return 0;}void someFunc(int x, int y, std::vector<std::pair<int, int> > hello){ std::cout << "I made it." << std::endl;}旁注:您可以通过引用将vector传递给someFunc,这将消除不必要的副本: void someFunc(int x, int y, const std::vector<std::pair<int, int> >& hello); ^^^ ^^关于c++ - 如何将vector <pair <int,int>>传递给函数?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14618065/