我不好说

This commit is contained in:
iridiumR 2021-11-11 20:45:47 +08:00
parent ff6c8fba01
commit b3bff49b45
3 changed files with 77 additions and 0 deletions

8
ex7/ex7.cpp Normal file
View file

@ -0,0 +1,8 @@
#include <stdio.h>
#include "stack.h"
int main()
{
printf("g")
}

27
ex7/stack.cpp Normal file
View file

@ -0,0 +1,27 @@
#include "stack.h"
// template <class T>
// void Stack<T>::push (T const& elem)
// {
// _elems.add(elem);
// }
// template <class T>
// T Stack<T>::pop ()
// {
// if (_elems.getused()) {
// return NULL;
// }
// // 删除最后一个元素
// return _elems.remove_back()
// }
// template <class T>
// T Stack<T>::top () const
// {
// if (_elems.getused()) {
// return NULL;
// }
// // 返回最后一个元素的副本
// return _elems[_elems.getused()-1];
// }

42
ex7/stack.h Normal file
View file

@ -0,0 +1,42 @@
template <class T>
class Stack {
private:
T _v[10];
int _len=10;
int used=0;
public:
void push(T const&);
T pop();
T top() const;
bool empty() const;
protected:
// void expand()
// {
// _len = _len * 2;
// T *p = new T[_len];
// for (int i = 0; i <= _used; i++)
// p[i] = _v[i];
// delete[] _v;
// _v = p;
// }
// template <class T>
// void Vec<T>::shrink()
// {
// if (((double)_used / (double)_len) >= 0.25)
// return;
// _len = _len >> 1;
// T *p = new T[_len];
// for (int i = 0; i <= _used; i++)
// p[i] = _v[i];
// delete[] _v;
// _v = p;
// }
};