关于#冒泡排序# #class#的问题,如何解决?

我想把冒泡排序封装进一个class出现了错误:
67 21 main.cpp [Error] no matching function for call to 'sf_sort::Bubbl(int [10000000], int&)'

int n,a[10000000];
class sf_sort
{
    public:
        void Bubbl(int * &a,const int &n);
};
void sf_sort::Bubbl(int * &a,const int &n)
{
    for(int i=1;i<=n;i++)
    {
        int it=i; 
        for(int j=it;j<=n;j++)
        {
            if(a[it]>a[j])
            {
                int temp_main_two_for=a[it];
                a[it]=a[j];
                a[j]=temp_main_two_for;
                it=j;
            }
        }
    }
}
int main()
{
    sf_sort sf_sort_n;
    cin>>n;
    for(int i=1;i<=n;i++)
    {
        cin>>a[i];
    }
    sf_sort_n.Bubbl(a,n);
    for(int i=1;i<=n;i++)
    {
        cout<<a[i]<<" ";
    }
}

其实错误信息提示你了,你传入的实参为全局的数组 a,而形参更希望的是指针引用。
你在调用 Bubbl() 之前,这样:

int* p_temp = a;
Bubbl(p_temp,n);

这样应该就可以了

int n,a[10000000];
这是全局变量
那么你函数参数就不要参数a了