【c++自学笔记04】
// 2-6 引用-----内存的别名
#include <iostream>
using namespace std;
int main(int argc, char const *argv[])
{
/* code
规则1:引用没有定义,是一种关系型声明。声明它和原有某一变量(实体)的关系。
故而类型与原类型保持一致,且不分配内存。与被引用的变量有相同的地址。
规则2:声明的时候必须初始化,一经声明,不可变更。
规则3:可对引用,再次引用。多次引用的结果,是某一变量具有多个别名。
规则4:&符号前有数据类型时,是引用。其它皆为取地址。
*/
int a=5;
int &ra=a;
cout<<ra<<" "<<a<<endl; //输出 5 5
a=100;
cout<<ra<<" "<<a<<endl; //输出 100 100
ra=26;
cout<<ra<<" "<<a<<endl; //输出 26 26
int &rra=ra;
rra=6666;
cout<<ra<<" "<<a<<endl; //输出 6666 6666
int b;
int &ra=b; //错误,不可更改原有的引用关系
double &rr=b; //错误,引用类型不匹配
return 0;
}
引用作函数参数
#笔记##include <iostream>
using namespace std;
void swap(int &a,int &b)
{
int temp=a;
a=b;
a=b;
b=temp;
}
int main(int argc, char const *argv[])
{
/* code */
int a,b;
cin>>a>>b;
swap(a,b);
cout<<a<<" "<<b<<endl;
return 0;
}
