首页新闻找找看学习计划

有关地址与引用参数的问题

0
悬赏园豆:30 [待解决问题]

include<iostream>

using namespace std;
void App(int&pa,int n);
int main()
{int
ary=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?

努力i的主页 努力i | 初学一级 | 园豆:56
提问于:2019-12-09 23:49

麻烦整理一下格式

不如隐茶去 1个月前
< >
分享
所有回答(1)
0

你这函数声明和实际的定义不一样啊, 还是你贴代码的时候, 有些字符被当成markdown的标记了.

jakio6 | 园豆:470 (菜鸟二级) | 2019-12-10 12:41

如果没有&, 函数参数就只是值传递, 你要改变的是个作为参数的这个变量的值, 而不是实际传给函数的,
这个变量的副本的值

支持(0) 反对(0) jakio6 | 园豆:470 (菜鸟二级) | 2019-12-10 12:57
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册