#include <iostream>
#include <iomanip>
class CTest
{
};
int main()
{
int a = 50;
int& b = a;
int* c = &a;
CTest* pTest = new CTest();
std::cout << "a:" << a << "\r\n";
std::cout << "b:" << b << "\r\n";//引用,别名,节省内存
b = 20; //修改别名,等于修改自己
std::cout << "a:" << a << "\r\n";
std::cout << "c:" << c << "\r\n";//地址,也就是指针
std::cout << "&a:" << &a << "\r\n";//地址
std::cout << "*c:" << *c << "\r\n";//取地址中的内容,与a、b相同
std::cin >> a;
/*
输出结果:
a:50
b:50
a:20
c:012FF708
&a:012FF708
*c:20
知识点:
1、变量
2、int& b与int &b是相同的,但建议写成int& b,把int&看作是一种类型,b看作是该类型的一个变量;
3、int* c与int *c是相同的,但建议写成int* c,把int*看作是一种类型,c看作是该类型的一个变量;
4、&a读作“取地址”,取得a的地址;*c读做“取内容”,取得指针c所指向的变量的内容。
5、new 一个对象以后分配一个地址空间,出来的是指针。
6、指针调用对象属性或者方法使用->,引用调用属性或方法直接打.
*/
return 0;
}