#include <ctype.h>
#include <stdio.h>
#include <string.h>
class String
{
public:
String(const char *s) { ... }
String(const String &s) { ... }
~String() { delete str; }
size_t length() { return len; }
const char *text() { return str; }
void cat(char c) { ... }
char &sub(size_t i)
{
if (i > len)
/* error */;
return str[i];
}
private:
size_t len;
char *str;
};
int main()
{
size_t i;
String s1("hello");
String s2(s1);
printf("s1 = %s\n", s1.text());
printf("s2 = %s\n", s2.text());
for (i = 0; i < s1.length(); ++i)
s1.sub(i) = toupper(s1.sub(i));
printf("s1 = %s\n", s1.text());
printf("s2 = %s\n", s2.text());
return 0;
}
// End of File