国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

值傳遞,指針傳遞,引用傳遞 的區別

2019-11-08 19:36:28
字體:
來源:轉載
供稿:網友
值傳遞,指針傳遞,引用傳遞 的區別值傳遞:從被調用函數的角度來說,值傳遞是單向的(實參->形參),參數的值只能傳入,不能傳出形參為實參的拷貝,形參有單獨的內存空間,當函數內部需要修改參數,并且不希望這個改變影響調用者時,采用值傳遞指針傳遞:指針傳遞向形參傳遞的為實參的地址,即形參為一個指向實參地址的指針,形參的值為實參的地址,而形參所在的地址并不是實參的地址對形參指向內容的修改即改變了實參的值引用傳遞:引用傳遞與指針傳遞不同是:引用傳遞中形參與實參的地址和參數值都是相同的,形參與實參只是名字不一樣(形參相當于實參的別名)

實際上是一個對象

#include "stdafx.h"#include<iostream>using namespace std;void ValueTransfer(int a, int b){	int temp = a;	a = b;	b = temp;	cout << a << b << endl;	cout << "形參a與b的地址為/n";	cout << &a << ' ' << &b << endl;}void PointerTransfer(int *a, int *b){	int temp = *a;	*a = *b;	*b = temp;	cout << *a << *b << endl;	cout << "形參a與b的地址為/n";	cout << &a << ' ' << &b << endl;}void QuoteTransfer(int &a, int&b){	int temp = a;	a = b;	b = temp;	cout << a << b << endl;	cout << "形參a與b的地址為/n";	cout << &a << ' ' << &b << endl;}int main(){		int x = 3;	int y = 4;	//value transfer	cout << "值傳遞/n";	ValueTransfer(x, y);	cout << "實參x與y地址為/n";	cout << &x << ' ' << &y << endl;	cout << "傳遞后實參的值為:/n";	cout << x << y << endl << endl;		//PointerTransfer	cout << "指針傳遞/n";	PointerTransfer(&x, &y);	cout << "實參x與y地址為/n";	cout << &x << ' ' << &y << endl;	cout << "傳遞后實參的值為:/n";	cout << x << y << endl << endl;	//QuoteTransfer	cout << "引用傳遞/n";	QuoteTransfer(x, y);	cout << "實參x與y地址為/n";	cout << &x << ' ' << &y << endl;	cout << "傳遞后實參的值為:/n";	cout << x << y << endl << endl;	return 0;}結果:


上一篇:枚舉

下一篇:jsoup 中文 api

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 双桥区| 资源县| 六枝特区| 逊克县| 宜宾市| 禹州市| 澜沧| 临泽县| 丹棱县| 甘泉县| 高唐县| 临高县| 梁平县| 万源市| 兴国县| 双辽市| 辽阳市| 博客| 隆德县| 玛纳斯县| 凉山| 富宁县| 四会市| 上杭县| 泽库县| 庆元县| 且末县| 涿鹿县| 郓城县| 民勤县| 阿拉善左旗| 荃湾区| 佛学| 神池县| 肃南| 青海省| 玛多县| 曲阳县| 内丘县| 榆社县| 延寿县|