#include <iostream>
using namespace std;
/*
若返回静态变量或全局变量
可以成为其他引用的初始值
即可作为右值使用,也可作为左值使用
*/
int getA()
{
static int a =10 ;
a ++ ;
return a;
}
int* getA2()
{
static int a =20 ;
a++;
return &a;
}
int& getA3()
{
static int a =30;
a ++;
printf("a:%d\n",a);
return a;
}
int main()
{
int cc = getA();
printf("cc:%d\n",cc);
int*w = getA2();
printf("w:%d\n",*w);
int t = getA3();//a:31
printf("t:%d\n",t);
//getA() = 100; //左操作数必须为左值 ====》 11=100
//getA2() = (int*)100; 左操作数必须为左值
getA3() = 100;//a:32
getA3();//a:101
system("pause");
return 0;
}
函数返回值为引用可以做左值使用
最新推荐文章于 2025-01-27 21:52:06 发布