zoukankan      html  css  js  c++  java
  • Return to the Basic 类 (class )

    创建一个队列类(Queue, FIFO)

    声明:

    class queue{
     int q[20];
     int front,rear; 
    public:
     void init();
     void qput(int i);
     int qget();
    };
    
    成员变量:q[], front , rear 
    - 默认的情况下是私有的(private): 只能被queue类的成员访问.

    成员函数: init(), qput(); qget();
    - public: 可以被程序中的其他函数访问.
    - 要实现成员函数,需要使用运算符:: (作用域解析运算符)告诉成员函数是属于该类的。

    void queue::qput(int i){  
       if(rear==20){
        cout<<"Queue is full.\n";
        return;
       }
       rear++;
       q[rear]=i; //在队尾进行数据插入
    }
    


    创建对象: queue Q1,Q2;

    成员函数调用: 只能通过相应的对象来调用(对象名和.运算符 )

     queue object1,boject2;
     object1.init();

    //完整的代码:

    #include <iostream>
    using namespace std;
    
    //创建类queue
    class queue{
     int q[20];
     int front,rear; 
    public:
     void init();
     void qput(int i);
     int qget();
    };
    
    //初始化类queque
    void queue::init(){
     front=rear=0;
    }
    
    //在队尾插入一个整数
    void queue::qput(int i){  
       if(rear==20){
        cout<<"Queue is full.\n";
        return;
       }
       rear++;
       q[rear]=i; 
    }
    
    //在队首取出一个整数
    int queue::qget(){
     if(front==rear){
      cout<<"Queue underflow.\n";
      return 0;
     }
     front++;
     return q[front];
    }
    
    int main(){
     queue q1,q2;  //创建2个queue 对象(object)
     q1.init();
     q2.init();
    
     q1.qput(15);
     q2.qput(18);
    
     q1.qput(25);
     q2.qput(28);
    
     cout<<"Queue q1:";
     cout<<q1.qget()<<" ";
     cout<<q1.qget()<<"\n";
    
     return 0;
    }
    
    


    输出结果:

    Queue q1:15 25
     

    类的通用形式:

    class class_name{

          private data and functions

    public:

          public data and functions

    } object-list;

  • 相关阅读:
    C++11 学习笔记 std::function和bind绑定器
    vue服务端渲染如何使用html模板
    vue服务端渲染的基本实现
    vscode实用6款插件
    $router.addRoutes()+vuex 动态添加路由
    Vue.extend()
    vue router滚动行为scrollBehavior
    vue路由精确匹配模式 exact
    redirect和alias的区别
    vue命名路由(name)的作用
  • 原文地址:https://www.cnblogs.com/fdyang/p/2858753.html
Copyright © 2011-2022 走看看