欢迎来到天天文库
浏览记录
ID:79060471
大小:30.50 KB
页数:3页
时间:2022-02-08
《第十章---类》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、类:带有一定功能的程序(比如汽车:可以移动,由轮子、座位等东西组成)。类的声明:类的声明将有关的信息告诉编辑器。格式:class(类名){数据成员;方法;};列子:Classcat{Unsignedintitsage;Unsignedintitsweight;Voidmeow();};定义对象:声明类后就可以定义类的变量。格式:类的名称变量;列子:Catfrisky;类与对象:Frisky是cat的对象,frisky不是类。访问类的成员:定义实际对象后就可以用(.)的方式访问类的成员。格式:对象.类成员;列子:Frisky.itsage=5;//这是表示将5给
2、itsage(不是赋值)Frisky.itsweight;//这事表示访问itsweight给对象而不是赋值:在类中注意数据赋给方式。正确的格式:对象.变量=数据;列子:Frisky.itsage=6;类不能有没有声明的功能类中不能出现没有声明过的功能。列子:CatfriskyFrisky.bark()这个在编辑器中是会提示错误的因为bark()这个方法在声明中没有。私有和公有Public:公有关键字。Private私有关键字。公有的数据可以被访问,私有数据不可以被其他成员访问。默认情况下是私有成员。格式:{publicpricate:……遇到下一个关键字或
3、者(})结束。列子:Intmain(){Public:unsignedintitsage;unsignedintitsweight;voidmeow();}私有数据成员在类中数据一般设定为私有数据;用公有存取器来读取或修改数据。格式:存取函数;Pricate:数据成员;列子:intitsage(){returnage};Private:Intage;实现类的方法每个存取器以及声明和其他类的方法必须有实现。实现被称为函数的定义。作用是:时声明的函数有函数体。是他实现功能计算机的地方。格式:返回值类型类名::函数名(参数)列子:voidcat::meow()添加构
4、造函数和析构函数构造函数是作用于对值的初始化与类同名,没有任何返回值;析构函数是对数据被销毁后完成清理工作释放内存,在类的名字前加“~”符号构造格式:类名(参数);析构格式:~类名();默认的构造函数和析构函数如没没有给类编辑构造函数和析构函数折编辑器折自动提供默认的构造函数和析构函数。使用默认的构造函数和析构数使用默认构造函数这是个格式问题,所有的对象都必须被构造和析构,在创建对象时会调用构造函数。有构造函数就必须创建析构函数。构造函数和析构函数都没有返回值。析构函数没有参数。格式:声明对象时不传递参数:Cat();必须有一个这样的构造:cat();创建对象
5、时将调用构造。如果构造接受参数这样写。Catfrisky(5,7);这表示构造接受两个参数。Const成员函数Const关键字是用来声明不可以修改变量,只读取。格式:voidsomefunction()const;用关键字后这个函数只可以读取数据不可以改变数据值。在类中通常用在读取数据函数中。将类声明和方法定义放在什么地方类的声明和方法可以放在一起也可以分开,但程序员约定类的声明存放在扩展名为h,hp,hpp这样的头文件里;而实现放在cpp.c++语言一般用h和cpp。这两个文件的关联是在cpp的文件头中加入#include“类名.h”例子:Cat.h存放类的
6、声明;Cat.cpp存放类的实现。#include“cat.h”.内联的实现内联关键字inline使用方法在返回类型前加上inline格式:inlineintcat::getage()注:作用占时不明。也可以将函数定义放到类声明中,函数将自动生财内联。Intgetage(){returnitsage;}将其他类作为成员数据的类;一种创建复杂类的方法,先创建简单的类,然后将其包含到教复杂类的声明中。
此文档下载收益归作者所有