当前位置导航:炫浪网>>网络学院>>编程开发>>C++教程>>C++进阶与实例

C++ 对象与数组

      对象数组是指数组元素为对象的数组。该数组中若干个元素必须是同一个类的若干个对象。对象数组的定义、赋值和引用与普通数组一样,只是数组的元素与普通数组不同,它是同类的若干个对象。

      1. 对象数组的定义

      对象数组定义格式如下:

       <类名><数组名>[<大小>]...

      其中,<类名>指出该数组元素是属于该类的对象,方括号内的<大小>给出某一维的元素个数。一维对象数组只有一个方括号,二维对象数组要有两个方括号,等等,例如:

       DATE dates[7];

      表明dates是一维对象数组名,该数组有7个元素,每个元素都是类DATE的对象。

      2. 对象数组的赋值

      对象数组可以被赋初值,也可以被赋值。例如:

    class DATE
    {
     public:
      DATE(int m, int d, int y);
      void printf();
     private:
      int month, day, year;
    };

      下面是定义对象数组并赋初值和赋值:

       DATE dates[4]={ DATE(7, 7, 2001), DATE(7, 8, 2001), DATE(7, 9, 2001), DATE(7, 10, 2001) }

      或者

       dates[0] = DATE(7, 7, 2001);
       dates[1] = DATE(7, 8, 2001);
       dates[2] = DATE(7, 9, 2001);
       dates[3] = DATE(7, 10, 2001); 三层交换技术 交换机与路由器密码恢复 交换机的选购 路由器设置专题 路由故障处理手册 数字化校园网解决方案
      指向数组的指针和指针数组

      指向数组的指针和指针数组是两个完全不同的概念,现放在一起介绍是中为两者在定义格式相似,千万不要把它们搞混了。

      1. 指向数组的指针

      指向一般数组的指针定义格式如下:

       <类型说明符>(*<指针名>)[<大小>]...

      其中,用来说明指针的 * 要与<指针名>括在一起。后面用一个方括号表示该指针指向一维数组,后面用二个方括号表示该指针指向二维数组。<类型说明符>用来说明指针所指向的数组的元素的类型。例如:

       int (*P)[3];

      P是一个指向一维数组的指针,该数组有3个int型元素。

      而指向对象数组的指针,则把<类型说明符>改为<类名>即可:

       <类名>(*<指针名>)[<大小>]...

      指向数组的指针的主要应用思想是:将数组的首地址(二维数组的某个行地址)赋给指针,然后通过循环(for)改变指针指向的地址,从而动态的访问数组中各个元素。

      2. 指针数组

      所谓指针数组指的是数组元素为指针的那类数组。一个数组的元素可以是指向同一类型的一般指针,也可以是指向同一类类型的对象。

      一般指针数组的定义格式如下:

       <类型名>*<数组名>[<大小>]...

      其中,*加在<数组名>前面表示该数组为指针数组。[<大小>]表示某一维的大小,即该维的元素个数,…表示可以是多维指针数组,每一个[<大小>]表示一维。例如:

       int * pa[3];
       char * pc[2][5];

      在C++编程中,经常使用char型的指针数组用来存放若干个字符串。下面是一个一维指针数组的例子。

共2页 首页 上一页 1 2 下一页 尾页 跳转到
相关内容
赞助商链接