预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共90页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

第2章对象、类和派生概述2.类:对象划分成类. 一类对象的描述. 数据成员 成员函数 对象通过类生成 程序设计 以函数为单位; 以类为单位. 程序结构:类结构.用面向对象的程序语言进行程序设计,一个基本工作就是定义程序中所需要的各种对象。采用的方式是先定义对象的类,然后用这些类生成程序中要使用的对象。 把类看成类型,对象看成变量,用类型声名变量;用类声名对象。 类型变量名 类对象2.类和对象classstud {private: intnum; charname[10]; charsex; public: voiddisplay() {cout<<“num”<<num<<endl; cout<<“name”<<name<<endl; cout<<“sex”<<sex<<endl; } }; studstudent1,student2;访问权限: 类是一个程序范围,在一个类内,private下的成员,仅能被类内的成员函数访问. public下的成员,能被类内的成员函数和外部的函数访问. 访问表示法:对象名.成员 例:student1.display()public: 成员1;…….成员n构造函数(constructor) 作用:建立对象时初始化; 建立对象时自动执行; 表示方法:同类名 和 析构函数(destructor) 作用:对象灭亡时做善后工作; 对象灭亡时系统自动执行它. 表示方法:类名()classstud {private: intnum; charname[10]; charsex; public: stud(){num=10010;sex=f; name=strcpy(name,”Wang_Li”:} voiddisplay() {cout<<“num”<<num<<endl; cout<<“name”<<name<<endl; cout<<“sex”<<sex<<endl; } }; studstudent1;构造函数可定义如下: stud(intn,charnamee[],chars) {num=n; strcpy(name,namee); sex=s; } studstudent1(10010,“Wang_Li”,f); studstudent21(10011,“Zhang_Fun”,m); 构造函数可以重载: stud(){num=10010;sex=f; strcpy(name,“Wang_Li”); } stud(intn,charnamee[],chars) {num=n; strcpy(name,namee); sex=s; } studstudent1(); studstudent21(10011,“Zhang_Fun”,m); 例15.2含有析构函数 #include<string.h> #include<iostream.h> classstud {private: intnum; charname[10]; charsex; public: stud(intn,charnamee[],chars) {num=n;sex=s; strcpy(name,namee); } stud(){} voiddisplay() {cout<<“num”<<num<<endl; cout<<“name”<<name<<endl; cout<<“sex”<<sex<<endl; } }; Voidmain() {studstudent1(10010,“Wang_Li”,f), student2(10011,“Zhang_Fun”,m); student1.display(); student2.display(); }例15.3在类的外面定义成员函数 #include<string.h> #include<iostream.h> classstud {private: intnum; charname[10]; charsex; public: stud(intn,charnamee[],chars); stud(); display(); }stud::stud(intn,charnamee[],chars) {num=n;strcpy(name,namee);sex=s;} stud::stud() {} voidstud::display() {cout<<“num”<<num<<endl; cout<<“name”<<name<<endl; cout<<“sex”<<sex<<endl; }voidmain() {studstudent1(10010,“Wang_Li”,f), student2(10011,“Zhang_Fun”,m); student