1. 程式人生 > >c++中普通變數,引用變數 ,指標變數用例項讓你親自體會

c++中普通變數,引用變數 ,指標變數用例項讓你親自體會

	int a1 = 10;
	int a2 = 20;
	int a3 = a1;//賦值語句,可以理解成資料的克隆,a3與a1 不在是指向一個物件
	int &b = a1;
	//int &b2 = 900; //不合法,非常量引用的初始值必須左值
	int *c = &a1;
	//&b = a2; 不合法,表示式必須是一個可以修改的左值。說明b不能被重複賦值
	//b = 900; 合法,這裡已經對b指向的物件賦值,所以這裡的修改會改變a1的值
	*c = 100;
	c = &a2;//說明 指標是可以被重新賦值到新的地址,這裡的表示式是可以左值的,
	*c = 200;//這樣的修改,也是對c指標指向的物件重新賦值,所以也會影響到a2的值。

	cout << "a1:" << a1 << ":地址" << &a1 << endl;
	cout << "a2:" << a2 << ":地址" << &a2 << endl;
	cout << "a3:" << a3 << ":地址" << &a3 << endl;
	cout << "b :" << b << ":地址" << &b << endl;
	cout << "c :" << *c << ":地址" << c << endl;
	/**
	1.引用變數開始必須被初始化,是一個別名,引用變數不能再被修改只想別的變數 &b = a2。
	2.一旦定義了引用變數 那麼b的使用與原來的變數a1 一樣沒有區別
	3.指標變數可以被重新賦值
	4.指標變數不需要被初始化
	5.指標變數的使用* 與引用變數都會對物件資料進項更改
	6.未完待續
	*/