5月9号QT学习练习1

手动封装一个循环顺序队列类(Stack)
私有成员属性:存放队列的数组、两个变量分别记录队头和队尾下标公有成员函数:入队(push( type value ))
出队(pop())
展示(show)
求队列长度(size())︰要求时间复杂度在常量级别判满( bool full())
判空(bool empty())
 

#include <iostream>
#define MAXSIZE 8
using namespace std;

class queue
{
private:
    int s[MAXSIZE];
    int rear  = 0;
    int front = 0;

public:
    bool full()
    {
        return front == (rear+1)%MAXSIZE;
    }
    bool empty()
    {
        return front == rear;
    }
    void push(int m)
    {
        if(full())
        {
            cout<<"入队失败"<<endl;
            return;
        }
        s[rear] = m;
        rear = (rear+1)%MAXSIZE;
    }
    int pop()
    {
        if(empty())
        {
            cout<<"出队失败"<<endl;
            return -1;
        }
        int a = s[front];
        cout<<"出队列的元素是:"<<a<<endl;
        front = (front+1)%MAXSIZE;
        return 0;
    }

    int size()
    {
        return (MAXSIZE-front+rear)%MAXSIZE;
    }
    void show()
    {
        if(empty())
        {
            cout<<"遍历失败"<<endl;
            return;
        }
        for(int i=front;i!=rear;i=(i+1)%MAXSIZE)
        {
            cout<<s[i]<<"  ";
        }
        cout<<endl;
    }
};
int main()
{
    queue l;
    int num = 0;
    int m = 0;
    while(1)
    {
        cout<<"1.入队"<<endl;
        cout<<"2.出队"<<endl;
        cout<<"3.遍历队列"<<endl;
        cin>>num;
        switch (num)
        {
        case 1:
        {
            cout<<"输入元素:";
            cin>>m;
            l.push(m);
        }
            break;
        case 2:
        {
            l.pop();
        }
            break;
        case 3:
        {
            l.show();
            cout<<l.size()<<endl;
        }
            break;
        default:cout<<"请重新输入操作数"<<endl;

        }
    }
    return 0;
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Qt5是目前比较流行的一款跨平台UI开发框架,而百度地图是广泛使用的地图服务平台。基于Qt5开发百度地图可以实现丰富的地图显示和功能,比如地图缩放、地图移动、标记点、路径规划等等。以下介绍Qt5百度地图开发学习的一些重要内容: 1. 在Qt5中使用百度地图API提供的JS版本的JavaScript编程接口。这个接口非常庞大,涵盖了地图显示、地图控件、事件处理、服务调用等方面。需要熟练掌握地图API并理解其使用方式。 2. Qt5提供了WebEngine模块来支持网页显示和JavaScript编程,这在开发百度地图应用时非常重要。学习WebEngine的知识,理解网页加载、JavaScript运行等过程,可以使得地图应用更加丰富和复杂。 3. Qt5中的QML语言能够很好地支持百度地图的开发,因为QML是一种高效且易于阅读的XML风格的页面描述语言。熟练掌握QML的语言特点和使用方式可以让地图应用开发更加便捷。 4. 熟悉Qt5中的一些地图相关的开源项目,比如QMapControl和QGeoMapWidget等,这些项目提供了实现地图功能的方法和范例。阅读和理解这些项目的源代码可以加深地图应用开发的技能。 总之,Qt5百度地图开发学习需要掌握Qt5编程、网页技术、地图API和地图项目源代码等方面的知识。积极参与开源项目和社区可以获得更多的经验和知识。当然,需要不断动手实践和测试,才能真正掌握Qt5百度地图开发的技能。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值