#include <iostream>
class String
{
public:
String(); // default constructor
String(const char *str); // conversion constructor
String(const String &str); // copy constructor
~String(); // destructor
String & operator=(const String &str); // copy assignment operator
int size(void) const;
friend ostream & operator<<(ostream &os, const String &str);
// some logical operators
friend bool operator>(const String &str1, const String &str2);
friend bool operator<(const String &str1, const String &str2);
friend bool operator==(const String &str1, const String &str2);
private:
char *string_; // the "real" string
};