I am attempting to implement a circular buffer. So now I am testing some code.
raw_buffer.h
#include <algorithm> // for std::min
#ifndef RAWBUFFER_H
#define RAWBUFFER_H
class CircularBuffer
{
public:
CircularBuffer(size_t capacity);
~CircularBuffer();
size_t size() const { return size_; }
size_t capacity() const { return capacity_; }
// Return number of bytes written.
size_t write(const char *data, size_t bytes);
// Return number of bytes read.
size_t read(char *data, size_t bytes);
private:
size_t beg_index_, end_index_, size_, capacity_;
char *data_;
};
extern CircularBuffer MyCircularBuffer;
#endif
main_raw.cpp
#include "raw_buffer.h"
#include <iostream>
#include <string>
using namespace std;
int main() {
const char *data_test1 = "AAAA";
const char *data_test2 = "BBBB";
const char *data_test3 = "CCCC";
CircularBuffer Buffer;//<---error
return 0;
}
The line CircularBuffer Buffer;
is giving me the error: "no default constructor exists for class "CircularBuffer".