填空,使得程序输出指定结果
(注意:加在getElement前即可哦)
#include <iostream>
using namespace std;
// 在此处补充你的代码
getElement(int * a, int i)
{
return a[i];
}
int main()
{
int a[] = {1,2,3};
getElement(a,1) = 10;
cout << a[1] ;
return 0;
}
解答:
#include <iostream>
using namespace std;
int & getElement(int * a, int i)
{
return a[i];
}
int main()
{
int a[] = {1,2,3};
getElement(a,1) = 10;
cout << a[1] ;
return 0;
}
尝试过程中的错误:
1.error:Ivalue required as left operand of assignment(左值应该是左值)
int n=1;
int & getElement;
getElement(int * a, int i)
{
return a[i];
}
int main()
{
int a[] = {1,2,3};
(此处报错) getElement(a,1) = 10;
cout << a[1] ;
return 0;
}
2.error:ambiguating new declaration of 'int getElemrnt(int*,int)' (函数前后类型不一致,“有歧义”)
int n=1;
int & getElement(int*,int i);
getElement(int * a, int i)
{
return a[i];
}