当前位置 : 主页 > 编程语言 > c++ >

数组和指针--C++复习(3)

来源:互联网 收集:自由互联 发布时间:2021-06-23
一、数组 1.数组的长度是固定的,而指针可以像迭代器来遍历数组; 2.数组不仅可以用来保存基本类型,还可以用来保存 类类型 : 1 class Per{ 2 **** 3 }; 4 5 const int size = 2 ; 6 Per pers[siz

一、数组

 

       1.数组的长度是固定的,而指针可以像迭代器来遍历数组;

       2.数组不仅可以用来保存基本类型,还可以用来保存类类型

 1 class Per{
 2   ****
 3 };
 4 
 5 const int size =2;
 6 Per pers[size];
 7 Per p1;
 8 Per p2;
 9 pers[0]=p1;
10 pers[1]=p2;//那么就可以通过数组来获取类对象的不同内容

       3.如果元素为类类型,调用默认构造函数进行初始化,如果没有默认构造函数,应显式调用其他构造函数。

       4.数组不能直接复制或赋值。

二、指针

       1.指向另外一种变量地址的变量,使用指针可以间接操作指向的变量对象;

       2.通过指针来操作数组:

1 int arr[3]={1,2,3};
2 int *ap=arr;//把首地址赋给ap
3 int *ap1=ap+1;//指针加1相当于把指针向后移1位,加n移n位

       3.指向空:int *p=0;或者int *p=NULL;

       4.void *指针,可以保存任何类型对象的地址,一般用于函数的返回值或者是形参。

       5.指针和应用的区别:引用总是指向某个对象,而且定义引用时必须初始化,而指针可以不用初始化;给引用赋值修改的是该引用所关联的对象的值。

       6.指针和const:

       (1)指向const对象的指针,如:

1 const float pi=3.14;
2 const float *ppi;
3 *ppi=π
4 *ppi=3.15;//这句错误,不能通过*ppi来修改const对象pi的值

       (2)const指针,指针本身不能被修改,如:

1 int i=100,j=200;
2 int *const pi=&i;//指针pi不能被修改

       (3)指向const对象的const指针

1 const double pi=3.14;
2 const double *const pi_p=π//这里二者都不能被修改
网友评论