C类的精解秒用.pptx
《C类的精解秒用.pptx》由会员分享,可在线阅读,更多相关《C类的精解秒用.pptx(29页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、类的声明 class 名称 成员 ;class studentcharname20;intsex;/student类中定义了两个成员变量是不是觉得与结构体没什么差别,那么再看下面这个例子。关键字class标识类定义第2页/共29页第1页/共29页 classstudentcharname20;intsex;voidchangename(char*lname)strcpy(name,lname);voidchangesex(intlsex)sex=lsex;发现类可以定义C语言中的结构体不能定义的函数changename(),changesex()。第3页/共29页第2页/共29页类的定义类的定
2、义一般分为说明部分和实现部分。说明部分数据成员说明 属性成员函数说明 方法第4页/共29页第3页/共29页类的成员函数的实现有两种方式:在类中边定义边实现。在类中定义在类外实现。请先记住有这两种方式,具体如何实现后面会讲到。第5页/共29页第4页/共29页类的一般定义格式classpublic:private:;/分号不能忘是不是有一个疑问,public,private指的是什么呢?第6页/共29页第5页/共29页其中,class是定义类的关键字。从访问权限上来分,类的成员可以分为三种:公有的(public),私有的(private)和保护的(protected)。public private
3、 protected可以被同类的方法和类之外的方法随意调用只能被同类中的方法访问,其它类都不能访问只能被同类和子类的方法访问,其余访问均会遭到拒绝第7页/共29页第6页/共29页classDatepublic:voidSetDate(inty,intm,intd);intIsLeapYear();/只有定义,没有实现,需在类外实现voidPrint()coutyear“.”month“.”dayendl;/在类中边定义边实现private:intyear,month,day;/三个私有成员变量;函数名往往是由多个单词组成的,习惯约定每个单词的第一个字母用大写字母,其余用小写,单词间不加任何分隔
4、符。那么,函数在类外如何实现呢?Date类的定义第8页/共29页第7页/共29页类体外实现成员函数的格式:返回类型:():称为作用域运算符,用来标识某个成员函数是属于哪个类的。voidDate:SetDate(inty,intm,intd)year=y;month=m;day=d;intDate:IsLeapYear()return(year%4=0&year%100!=0)|(year%400=0);第9页/共29页第8页/共29页对象的定义类定义完后如何使用呢?答案是通过对象,对象是类的实例。对象的定义格式:对象名表可以一个或多个对象名,多个时用逗号分隔。可以是一般的对象名,还可以是指向对
5、象的指针和对象数组。Datedate1,date2,*Pdate,date31;date1,date2是一般的对象名,*Pdate是指向对象的指针,date是对象数组的数组名,它有31个元素,每个元素都是一个Date类的对象。第10页/共29页第9页/共29页对象成员的表示方法一个对象的成员就是该对象的类所定义的成员。一般对象表示如下:.或.().是一个运算符,表示对象的成员。date1.year;date1.SetDate(inty,intm,intd);但是Pdate.year却是错的,为什么呢?第11页/共29页第10页/共29页对象指针的成员表示法:-或者-()-也是一个表示成员的运算
6、符,与.的区别是:-是用来表示指向对象的指针的成员,而.用来表示一般对象的成员。Pdate-yearPdate-SetDate(inty,intm,intd)第12页/共29页第11页/共29页下面两种定义是等价的:-(*).Pdate-SetDate(y,m,d)(*Pdate).SetDate(y,m,d)第13页/共29页第12页/共29页定义类时应注意事项在类体中不允许对所定义的数据成员进行初始化。例如:classDatepublic:private:intyear(1998),month(4),day(9);是错的。第14页/共29页第13页/共29页类中的数据成员的类型可以是任意的
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 精解秒用
限制150内