引用的符号是&,指针的符号是*
先来看看一段测试代码,
#include <iostream>
namespace std;
int globalJ =999;
5:
//返回值
int test1()
8: {
int j =1;
<<&j<<endl;
11:
return j;
13: }
14:
//使用局部变量,返回引用
int& test2()
17: {
int j =998;
<<&j<<endl;
<<j<<endl;
21:
return j;
23: }
24:
//使用全局变量,返回引用
int& test3()
27: {
28:
<<&globalJ<<endl;
30:
return globalJ;
32: }
33:
34:
//返回指针
int* test4()
37: {
int j =998;
<<&j<<endl;
<<j<<endl;
41:
42:
return &j;
44: }
//返回指针
int* test5()
47: {
<<&globalJ<<endl;
return &globalJ;
50: }
51:
52:
char* argv[])
54: {
);
56:
int testresultvalue =0;
58: testresultvalue = test1();
<<&testresultvalue <<endl;
<<testresultvalue<<endl;
<<endl;
62:
63:
int & testResultReference = test2();
<<&testResultReference <<endl;
<<testResultReference<<endl;
<<endl;
68:
69: testResultReference = test3();
<<&testResultReference <<endl;
<<testResultReference<<endl;
72: testResultReference = 4;
<<endl;
<<&testResultReference <<endl;
<<testResultReference<<endl;
76:
<<endl;
78:
int & testResultReference2 = test3();
<<&testResultReference2 <<endl;
<<testResultReference2<<endl;
<<endl;
83:
int* testResultPtr;
85: testResultPtr = test4();
<<testResultPtr <<endl;
<<*testResultPtr<<endl;
<<endl;
89:
90: testResultPtr = test5();
<<testResultPtr <<endl;
<<*testResultPtr<<endl;
<<endl;
94:
95:
96:
int temp;
98: cin>>temp;
99:
return 0;
101: }
102: