C++自定义数据类型.ppt

C++自定义数据类型.ppt

ID:48143205

大小:663.50 KB

页数:97页

时间:2020-01-17

C++自定义数据类型.ppt_第1页
C++自定义数据类型.ppt_第2页
C++自定义数据类型.ppt_第3页
C++自定义数据类型.ppt_第4页
C++自定义数据类型.ppt_第5页
资源描述:

《C++自定义数据类型.ppt》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、第5章自定义数据类型1本章学习要求:自定义数据类型与基本数据类型的区别自定义数据类型变量的定义与使用参数传递的两种方式指针类型的使用链表的操作25.1自定义数据类型概述除了基本数据类型的数据外,程序还经常需要描述一些复杂的概念,如线性表、员工等,一个员工有多个属性需要描述,如姓名、工作部门、工资、职务等。因此仅仅使用一个基本数据类型的变量不能描述,必须要由多个基本数据类型变量一起才能描述一个较复杂的员工的概念。C++除了提供基本数据类型(int、char、float、double、bool)外,还提供了用基本数据类型构造自定义的数据类型的机制,使得程序能够对复杂数据

2、如,员工等进行描述与处理。本章将对C++提供的自定义类型的构造机制进行分别介绍,他们包括:枚举、数组、结构、联合以及指针与引用。35.2枚举类型1.枚举类型的定义C++基本数据类型变量的取值范围是语言预先定义好的,而枚举类型变量的取值范围是由程序定义的。在定义一个枚举类型时,需要列出其变量所能取的每个值。枚举类型的定义通过关键字enum实现,格式如下:enum<枚举类型名>{<枚举值列表>};例如,下面定义了两个枚举类型:enumMonth{JAN,FEB,MAR,APR,MAY,JUN,JUL,AUG,SEP,OCT,NOV,DEC};enumPosition{L

3、EFT,RIGHT,TOP,BOTTOM};4枚举类型的每一个枚举值都对应着一个整型值,通常情况下,第一个枚举值对应常量0,第二个枚举值对应常量1,依次类推,如上述定义中JAN值为0,FEB值为1,…,DEC值为11;LEFT值为0,RIGHT值为1,…,BOTTOM值为3。在定义枚举类型时,也可以给枚举值指定对应的整数值,例如:enumDAY{SUN=7,MON=1,TUE,WED,THU,FRI,SAT};这时,SUN对应7,MON对应1,TUE对应2,WEB对应3,依次类型。可以给几个枚举值指定相同的整数值。如:enumParameter{MAX_ID_LEN

4、=10,MAX_NAME_LEN=10};枚举值MAX_ID_LEN和MAX_NAME_LEN对应的整数值都是10。5枚举类型变量定义的格式如下:<枚举类型名><变量名列表>;例如,下面是一些枚举类型变量的定义:Positionp1,p2;DAYworkday;Monthv;除此之外,枚举类型的变量也可以在定义枚举类型的同时定义。例如下面定义了3个Color类型的变量c1、c2、c3:enumColor{RED,BLUE,GREEN}c1,c2,c3;定义枚举类型时,可以省略枚举类型名,此时,必须在定义枚举类型时,定义变量,否则以后无法定义。例如:enum{RUNN

5、ING,STOPPING,PAUSE}r1,r2;62.枚举类型的运算能够对枚举类型施与整型所能够进行的所有运算,只是有些运算过程中,会有些限制,如赋值运算和输入输出。(1)赋值运算可以使用一个枚举值对枚举变量赋值,例如:Positionp1,p2;P1=LEFT;P2=P1;7(2)输入输出操作不能直接对枚举类型变量进行输入。例如,下面的操作是错误的:Dayd;cin>>d;//错误通常采用输入整型值,然后强制转换到枚举类型。例如:inti;cin>>i;d=(Day)i;//强制转换对枚举变量输出的是该变量枚举值对应的整数值。Dayd;d=SUN;cout<

6、;//输出对应的整数值78(3)除(1)、(2)外的其他任何整型能够参与的运算除了赋值操作和输入/输出操作有所限制外,可以对枚举类型的值进行任何整型值能够进行的运算。在运算时,系统首先把它们转换成对应的整型值,然后按照整型的操作进行。如,可以对两个枚举值进行大小比较:boolb=WED

7、误,因为d1+1的结果为int类型d2=(Day)(d1+1);//正确可以将枚举类型的每个枚举值当作一个整型符号常量。如:intconstMAX_LEN1=20;enum{MAX_LEN2=20};在使用MAX_LEN1的地方可以使用MAX_LEN2来代替。95.3数组类型105.3.1一维数组一维数组通常用于表示由固定多个同类型的具有线性次序关系的数据。1.一维数组变量的定义一维数组变量定义时,的格式为:<元素类型><一维数组变量名>[<元素个数>];例如,下面定义了一个由10个长整型数所构成的一维数组变量a:longa[10];即a中可存放10个长整数。1

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。