请教一个关于继承的问题

discory 2006-03-11 06:21:38
#include <iostream>
#include <process.h>

using namespace std;

const int MAX =200;

class queue
{
protected:
int qdata[MAX];
int tail,head;
public:
queue(void)
{
tail = head = 0;
}
void pushta(int i)
{
tail++;
qdata[tail] = i;
cout << "tail=" << tail << endl;
}
int pophe(void)
{
head++;
cout << "head=" << head << endl;
return qdata[head];
}
};

class queue2:public queue
{
public:
void pushta(int i)
{
if(tail < MAX) //tail初始值是0对吗?因为继承了queue类
queue::pushta(i); //这里,pusht a(i)是用的queue类的成员函数,i是多少
//怎么调用的,看不懂
else
{
cout << "queue is full\n";
return;
}
}
int pophe(void)
{
if(head < tail)
return queue::pophe();
else
{
cout << "queue underflow\n";
exit(1);
}
}
};

int main(void)
{
queue2 q;
q.pushta(123);
q.pushta(456);
cout << "1:" << q.pophe() << endl;
cout << "2:" << q.pophe() << endl;
cout << "3:" << q.pophe() << endl;

system("pause");
return 0;
}

这个程序看不懂了,大家帮我讲解一下这个程序流程
pocess是什么函数,标准c++该怎么调用
...全文
118 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
discory 2006-03-12
  • 打赏
  • 举报
回复
那pocess是什么函数?我在网上没搜到
C200501111 2006-03-12
  • 打赏
  • 举报
回复
三楼的基本上回答的很清楚了,你还问什么呢?
这不就是一个简单的队列嘛,
楼主还是把c++基本的东西看一下吧,程序思路很简单的
另外,你说什么process函数?你的程序中没有调用,是不是
头文件:#include <process.h>?
discory 2006-03-12
  • 打赏
  • 举报
回复
没人肯帮忙吗,在过一天就结了
junguo 2006-03-11
  • 打赏
  • 举报
回复
if(tail < MAX) //tail初始值是0对吗?因为继承了queue类

是0!

queue::pushta(i); //这里,pusht a(i)是用的queue类的成员函数,i是多少
//怎么调用的,看不懂

i就是你传进去的值,如: q.pushta(123);就是123.

就是在继承类中再调用一次基类的函数.如果不调用的话,你再把 tail++;
qdata[tail] = i;
cout << "tail=" << tail << endl;
这段代码放到调用处也一样.

64,680

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧