Вот довольно реалистичный пример класса string. В нем производится учет ссылок на строку с целью минимизировать копирование и в качестве констант применяются стандартные символьные строки C++.
#include
#include
class string {
struct srep {
Возможно вы искали - Статья: Запись и считывание данных (работа с файлами)
char* s; // указатель на данные
int n; // счетчик ссылок
};
srep *p;
public:
Похожий материал - Статья: Работа с регионами в Visual C++
string(char *); // string x = "abc"
string(); // string x;
string(string &); // string x = string ...
string& operator=(char *);
string& operator=(string &);
Очень интересно - Статья: Как написать AJAX-приложение
~string();
char& operator[](int i);
friend ostream& operator<<(ostream&, string&);
friend istream& operator>>(istream&, string&);
friend int operator==(string& x, char* s)
Вам будет интересно - Реферат: Администрирование SQL Server 2000
{return strcmp(x.p->s, s) == 0; }
friend int operator==(string& x, string& y)
{return strcmp(x.p->s, y.p->s) == 0; }
friend int operator!=(string& x, char* s)
{return strcmp(x.p->s, s) != 0; }
Похожий материал - Реферат: Использование SQL в прикладном программировании
friend int operator!=(string& x, string& y)
{return strcmp(x.p->s, y.p->s) != 0; }
};
Конструкторы и деструкторы просты (как обычно):