2026-27-cpp-homework/feladat5/feladat5/CMyString.h
2026-11-06 11:36:52 +01:00

28 lines
No EOL
725 B
C++

// Tóth Dániel Mátyás | IFPQYY | v1
#pragma once
class CMyString {
public:
CMyString();
CMyString(const char* psz);
CMyString(char ch, size_t repeat = 1);
CMyString(const CMyString& str);
~CMyString();
size_t size() const;
size_t capacity() const;
const char* c_str() const;
void clear();
char getat(size_t index) const;
void setat(size_t index, char ch);
void reserve(size_t newcapacity);
void erase(size_t pos, size_t count);
bool empty() const;
void display() const;
void shrink_to_fill();
void reverse();
void append(const char* psz, unsigned offset = 0, unsigned count = ~0);
CMyString& operator=(const CMyString& str);
private:
char* m_pchData;
size_t m_nDataLength;
size_t m_nAllocLength;
};