// Задача 03 — кольцевой буфер. Заполни реализации. #include class RingBuffer { public: explicit RingBuffer(size_t capacity) : cap_(capacity), data_(new int[capacity ? capacity : 1]), size_(0) {} ~RingBuffer() { delete[] data_; } bool push(int v) { (void)v; return false; // TODO } bool pop(int& out) { (void)out; return false; // TODO } size_t size() const { return size_; } size_t capacity() const { return cap_; } bool empty() const { return size_ == 0; } bool full() const { return size_ == cap_; } private: size_t cap_; int* data_; size_t size_; // добавь head_/tail_ по необходимости };