using namespace std;
void App(int&pa,int n);
int main()
{intary=NULL,t;
int i,n;
cout<<"n=";
cin>>n;
App(ary,n);
for(t=ary;t<ary+n;t++)
cout<<t<<" ";
cout<<endl;
for(i=0;i<n;i++)
ary[i]=10+i;
for(i=0;i<n;i++)
cout<<ary[i]<<" ";
cout<<endl;
delete[]ary;
ary=NULL;
}
void App(int*&pa,int len)
{pa=new int[len];
for(int i=0;i<len;i++)
pa[i]=0;
}
为什么不能
将int &pa改为 int pa?
你这函数声明和实际的定义不一样啊, 还是你贴代码的时候, 有些字符被当成markdown的标记了.
如果没有&, 函数参数就只是值传递, 你要改变的是个作为参数的这个变量的值, 而不是实际传给函数的,
这个变量的副本的值
麻烦整理一下格式
– 不如隐茶去 5年前