c++day6实现成模板类

1> 自行封装一个栈的类,包含私有成员属性:栈的数组、记录栈顶的变量

成员函数完成:构造函数、析构函数、拷贝构造函数、入栈、出栈、清空栈、判空、判满、获取栈顶元素、求栈的大小

#include 

using namespace std;
template  
class Stack
{
private:
    T data[50];
    int top;//记录栈顶的变量
public:
    //构造函数
    Stack():top(-1)//栈顶初始化为-1
    {
        cout<<"构造函数"<=0;i--)
        {
            cout<  s;
    s.S_push(1);
    s.S_push(2);
    s.S_push(3);
    s.S_push(4);
    s.S_pop();
    s.S_push(5);
    s.S_push(6);
    s.S_peek();
    s.S_size();
    s.S_free();
    s.S_size();
    s.S_push(5);
    s.S_push(6);
    s.S_size();
    s.S_peek();
    s.S_show();
    Stack  s3;
    s3.S_push(1.1);
    s3.S_push(2.2);
    s3.S_push(3.2);
    s3.S_push(2.4);
    s3.S_show();
    Stacks2(s);
    s2.S_show();

    return 0;
}

 c++day6实现成模板类_第1张图片

2> 自行封装一个循环顺序队列的类,包含私有成员属性:存放队列的数组、队头位置、队尾位置

成员函数完成:构造函数、析构函数、拷贝构造函数、入队、出队、清空队列、判空、判满、求队列大小

#include 

using namespace std;
template  
class Queue
{
private:
    T data[10];
    int front;//记录头元素位置
    int tail;//记录尾元素位置
public:
    //构造函数
    Queue():front(0),tail(0)//初始化
    {
        cout<<"构造函数"<  s;
    s.S_push(1);
    s.S_push(2);
    s.S_push(3);
    s.S_push(4);
    Queue  s3;
    s3.S_push(1.1);
    s3.S_push(2.2);
    s3.S_push(3.3);
    s.S_push(1);
    s.S_push(2);
    s.S_push(3);
    s.S_push(4);
    s.S_push(3);
    s.S_push(1);
    s.S_push(4);
    s.S_size();
    s.S_show();
    s3.S_show();

    Queues2(s);
    s2.S_show();



    return 0;
}

c++day6实现成模板类_第2张图片

 思维导图

你可能感兴趣的:(c++,java,数据结构)