gpt4 book ai didi

C++ 未声明的标识符 vector

转载 作者:塔克拉玛干 更新时间:2023-11-03 08:26:33 25 4
gpt4 key购买 nike

我有以下用于快速排序的代码。当我编译代码时,它显示以下错误:

错误 C2065:“vector ”:未声明的标识符
错误 C2062:类型 int:意外
错误 C3861:“快速排序”:找不到标识符

#include "iostream"
#include "conio.h"
#include "vector"
void quicksort(vector<int>,int,int);
int partition(vector<int>,int,int);

using namespace std;

int main()
{ vector<int> unsorted;
int n,x,y;
//cout<<"Initial size: "<<unsorted.size()<<"\n Capacity: "<<unsorted.capacity();
cout<<"Enter the size: ";
cin>>n;
cout<<"Enter the elements in unsorted array: "<<endl;

for(int a=0;a<n;a++)
{
cin>>x;
unsorted.push_back(x);
}
for(int b=0;b<n;b++)
{
cout<<unsorted[b]<<"\t";
}


x=1;
y=n;
quicksort(unsorted,x,y); //quicksort(array,1,array.length)

for(int m=0;m<n;m++)
{
cout<<unsorted[m]<<"\t";
}
return 0;
}


int partition(vector<int> given,int p,int r)
{
int pivot,i,j;
pivot=given[r];
i=p-1;
for(j=p;j<r-1;j++)
{
if(given[j]<pivot)
i++;
swap(given[i],given[j]);
}
swap(given[i+1],given[r]);
return i+1;

}

void quicksort(vector<int> given,int p,int r)
{ int q;

if(p<r)

q= partition(given,p,r);
quicksort(given,p,q-1);
quicksort(given,q+1,r);
}

最佳答案

移动:using namespace std; 在快速排序声明之上

void quicksort(vector<int>,int,int);
int partition(vector<int>,int,int);

using namespace std;

或更好地转储using namespace std,并更改为:

void quicksort(std::vector<int>,int,int);
int partition(std::vector<int>,int,int);

关于C++ 未声明的标识符 vector ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21332968/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com