C++的地址传递
【摘要】
引用和指针的区别:
1 引用必须初始化不能为空
2 引用不能脱离变量存在。指针可以
3 引用访问一个变量是直接访问,而指针是间接访问。 引用是一个变量的别名,本身不单独分配自己的内存空间,而指针有自己的内存空间。 引用在开始的时候就绑定到了一个内存空间(开始必须赋初值),所以他只能是这个 内存空间的...
引用和指针的区别:
1 引用必须初始化不能为空
2 引用不能脱离变量存在。指针可以
3 引用访问一个变量是直接访问,而指针是间接访问。
引用是一个变量的别名,本身不单独分配自己的内存空间,而指针有自己的内存空间。
引用在开始的时候就绑定到了一个内存空间(开始必须赋初值),所以他只能是这个
内存空间的名字,而不能改成其他的,当然可以改变这个内存空间的值.
看下面的例子:
-
// link.cpp : Defines the entry point for the console application.
-
//
-
-
#include "stdafx.h"
-
#include <iostream>
-
using namespace std;
-
//传引用
-
void swap(int &a)
-
{
-
a=10;
-
}
-
//传地址
-
void swap1(int *a)
-
{
-
*a=100;
-
}
-
-
//数组
-
void swap2(int p[],int n)
-
{
-
-
for(int i =0;i<n;i++)
-
{
-
p[i]=5;
-
}
-
}
-
int _tmain(int argc, _TCHAR* argv[])
-
{
-
-
int a =0;
-
swap(a);
-
cout<<a<<" yinyong"<<endl;
-
swap1(&a);
-
cout<<a<<" zhizhen"<<endl;
-
int aa[5]={1};
-
swap2(aa,5);
-
cout<<aa[4]<<" shuzu"<<endl;
-
getchar();
-
return 0;
-
}
文章来源: gamwatcher.blog.csdn.net,作者:香菜聊游戏,版权归原作者所有,如需转载,请联系作者。
原文链接:gamwatcher.blog.csdn.net/article/details/7026420
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)