C++!!!!!为什么上边的output能输出,下面的不能输出????所谓的可见性是怎么回事??主要说清楚两个函数只是把参数名字换了为什么会有区别?????谢谢大家!!!
C++!!!!!为什么上边的output能输出,下面的不能输出????所谓的可见性是怎么回事??主
答案:2 悬赏:0
解决时间 2021-02-28 22:20
- 提问者网友:雨之落き
- 2021-02-28 17:59
最佳答案
- 二级知识专家网友:佛说妍妍很渣
- 2021-02-28 19:14
1. 按照图中所示: 你的 x , y 应该是在外部定义的变量;
2. 下面的output,你传递过来的参数名字也是x.y
void output(int x,int y)
{
x = x;
y = y;
}你这里面写的x=x,y=y,其实是同一个局部的变量,是你传递过来的变量,写了跟没写一样,和你外面定义的x,y没有任何关系。
变量的可见性与变量的定义位置,作用域等有关,比如你的全局变量x,y定义在函数之外(该函数内未再次定义同名变量),但函数也可以使用该变量,此时便是存在且可见的,但对于其他函数中定义的变量,在该函数内就是不可见的;
2. 下面的output,你传递过来的参数名字也是x.y
void output(int x,int y)
{
x = x;
y = y;
}你这里面写的x=x,y=y,其实是同一个局部的变量,是你传递过来的变量,写了跟没写一样,和你外面定义的x,y没有任何关系。
变量的可见性与变量的定义位置,作用域等有关,比如你的全局变量x,y定义在函数之外(该函数内未再次定义同名变量),但函数也可以使用该变量,此时便是存在且可见的,但对于其他函数中定义的变量,在该函数内就是不可见的;
全部回答
- 1楼网友:情战凌云蔡小葵
- 2021-02-28 20:04
你好!
大哥,下边的是子程序
仅代表个人观点,不喜勿喷,谢谢。
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯