diff options
author | Andrei Golubev <andrei.golubev@qt.io> | 2021-11-12 16:31:06 +0100 |
---|---|---|
committer | Andrei Golubev <andrei.golubev@qt.io> | 2021-11-12 22:25:35 +0100 |
commit | 2a2fb306b8cfc3f386cf9432c4a343c213ee46f7 (patch) | |
tree | cc629b80359e71632740f1ec6ad9e740b546e614 /src/corelib/tools/qstack.h | |
parent | 3446313c7a5cd6005089866a7b20c9f28e132a0a (diff) |
Diffstat (limited to 'src/corelib/tools/qstack.h')
-rw-r--r-- | src/corelib/tools/qstack.h | 23 |
1 files changed, 5 insertions, 18 deletions
diff --git a/src/corelib/tools/qstack.h b/src/corelib/tools/qstack.h index a0e39f8ece..c43c63cdd2 100644 --- a/src/corelib/tools/qstack.h +++ b/src/corelib/tools/qstack.h @@ -49,26 +49,13 @@ class QStack : public QList<T> { public: // compiler-generated special member functions are fine! - inline void swap(QStack<T> &other) noexcept { QList<T>::swap(other); } // prevent QList<->QStack swaps - inline void push(const T &t) { QList<T>::append(t); } - T pop(); - T &top(); - const T &top() const; + void swap(QStack<T> &other) noexcept { QList<T>::swap(other); } // prevent QList<->QStack swaps + void push(const T &t) { QList<T>::append(t); } + T pop() { return QList<T>::takeLast(); } + T &top() { return QList<T>::last(); } + const T &top() const { return QList<T>::last(); } }; -template<class T> -inline T QStack<T>::pop() -{ Q_ASSERT(!this->isEmpty()); T t = this->data()[this->size() -1]; - this->resize(this->size()-1); return t; } - -template<class T> -inline T &QStack<T>::top() -{ Q_ASSERT(!this->isEmpty()); this->detach(); return this->data()[this->size()-1]; } - -template<class T> -inline const T &QStack<T>::top() const -{ Q_ASSERT(!this->isEmpty()); return this->data()[this->size()-1]; } - QT_END_NAMESPACE #endif // QSTACK_H |