1 / 71
文档名称:

[精选PPT] 数据抽象类.ppt

格式:ppt   页数:71页
下载后只包含 1 个 PPT 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

[精选PPT] 数据抽象类.ppt

上传人:yzhfg888 2015/11/4 文件大小:0 KB

下载得到文件列表

[精选PPT] 数据抽象类.ppt

文档介绍

文档介绍:第六章数据抽象--类
本章内容
面向对象基本思想
类和对象
对象的初始化和消亡前处理
const成员
静态成员
友元
什么是面向对象程序设计
把程序构造成由若干对象组成,每个对象由一些数据以及对这些数据所能实施的操作构成;
对数据的操作是通过向包含数据的对象发送消息(调用对象的操作)来实现;
对象的特征(数据与操作)由相应的类来描述;
一个类所描述的对象特征可以从其它的类获得(继承)。
例:栈
栈是一种由若干个具有线性次序的元素所构成的复合数据。
对栈只能实施两种操作:进栈(增加一个元素)和退栈(删除一个元素),并且这两个操作必须在栈的同一端(称为栈顶)进行。
后进先出(Last In First Out,简称LIFO)是栈的一个重要性质。
“栈”数据的表示及其操作 --过程式程序
#include <iostream>
using namespace std;
//定义栈数据类型
const int STACK_SIZE=100;
struct Stack
{ int top;
int buffer[STACK_SIZE];
};
void init(Stack &s)
{ = -1;
}
bool push(Stack &s, int i)
{ if ( == STACK_SIZE-1)
{ cout << “Stack is overflow.\n”;
return false;
}
else
{ ++; [] = i;
return true;
}
}
bool pop(Stack &s, int &i)
{ if ( == -1)
{ cout <<“Stack is empty.\n”;
return false;
}
else
{ i = []; --;
return true;
}
}
//使用栈类型数据
Stack st;
int x;
init(st); //对st进行初始化。
push(st,12); //把12放进栈。
pop(st,x); //把栈顶元素退栈并存入变量x。
或,
Stack st;
int x;
//对st进行初始化。
= -1;
//把12放进栈。
++;
[] = 12;
//把栈顶元素退栈并存入变量x。
x = [];
--;
例:“栈”数据的表示及其操作 --面向对象程序
#include <iostream>
using namespace std;
//定义栈数据类型
const int STACK_SIZE=100;
class Stack
{ int top;
int buffer[STACK_SIZE];
public:
Stack() { top = -1; }
bool push(int i)
{ if (top == STACK_SIZE-1)
{ cout << “Stack is overflow.\n”;
return false;
}
else
{ top++; buffer[top] = i;
return true;
}
}
bool pop(int &i)
{ if (top == -1)
{ cout << “Stack is empty.\n”;
return false;
}
else
{ i = buffer[top]; top--;
return true;
}
}
};
//使用栈类型数据
Stack st; //()对st进行初始化。
int x;
(12); //把12放进栈st。
(x); //把栈顶元素退栈并存入变量x。
= -1; //Error
++; //Error
[] = 12; //Error