1、整型变量的引用
程序如下:
#include <stdlib.h>
#include <iostream>
using namespace std; int main() { int a=10; int &b=a; b=200;//此处变量赋值不能int ,否则重定义 cout<<"此时a的值是;"<<a<<endl; a=100; cout <<"此时b的值是:"<<b<<endl; system("pause"); return 0; }
标明,引用无非就是给已经出现的变量定义了一个别名。所以在程序执行的过程中,对原来的变量做何种操作和对于他唯一的别名做什么操作,其实是别无二致的事情,因为本质上,两者是一种东西。
2、结构中的引用
#include <stdlib.h> #include <iostream> using namespace std; typedef struct{ int x; int y; }COORD;//结构体的定义,这是结构体的名字、 int main(){ COORD c;//结构体类型的c. COORD &c1=c;//数据类型就是结构体名,然后按格式&别名 c1.x=10; c1.y=29; cout<<c.x<<endl<<c.y<<endl; system("pause"); return 0; }
运行结果:
注意的问题:结构体的定义、结构体引用时,就结构体名就相当于数据类型。
3、指针中的引用
#include <stdlib.h> #include <iostream> using namespace std; int main() { int a=10; int *p=&a;//定义一个指针p,它指向a.注意& int *&q=p;指针类型引用的格式:数据类型 * & 别名=原来指针 *q=5;//注意不能前面再加数据类型,否则出现重复定义 cout <<a<<endl; system("pause"); return 0; }
运行结果:
4、引用后的别名作为函数参数
代码:
#include <stdlib.h> #include <iostream> using namespace std; //声明一个具有交换功能的函数 void fun(int &a,int &b);//a,b分别是实际参数的别名,作为形参使用,注意起别名的时候一定要加数据类型的啊 int main() { int x=10; int y=20; cout <<x<<","<<y<<endl; fun(x,y); cout<<x<<","<<y<<endl; system("pause"); return 0; } void fun (int &a,int &b){ int c=0; c=a; a=b; b=c; }; 运行结果:
今天主要学习了c++的几种引用的类型,搞清楚没种引用相应的格式类型,理解也很容易。今天的学习到此为止。
时间: 2024-11-05 13:43:30