再这之前,我曾认为,一个变量只要定义为全局变量后,即使把它以传参的方式传进去一个函数内,也能改变它的值
事实证明,这一想法是错的。
下面我用代码说明,具体注释将写在里面
#include<stdio.h>
#include<iostream> int a = ; void change(int *b){//这个是传指针,可以改变a
*b=*b+;
} void change_1(int a){//这个不能改变
a++;
} void change_2(int &a){//传入引用,可以改变
a++;
} void change(){//可以改变
a++;
} void main(){
change(&a);
std::cout<<a;
change_1(a);
std::cout<<a;
change_2(a);
std::cout<<a;
change();
std::cout<<a; }