#include "stdafx.h"
#include <iostream>
#include <string>
#include <cfloat>
using namespace std;
class String {
private:
char *str;
unsigned int len;
public:
String();
String(const char *str);
String(const String ©);
//String(const String &str);
~String();
char &Get(int index);
const char &Get(int index) const;
};
int main() {
const String str = "String"; // 상수 객체
String str2 = "String2"; // 일반 객체
char initial = 0;
initial = str.Get(0);
str2.Get(0) = 'A';
cout << str.Get(0) << endl;
cout << str2.Get(0) << endl;
return 0;
}
String::String(const char *str)
:str(0), len(0)
{
for (len = 0; str[len]; len++);
this->str = new char[len + 1];
for (unsigned int i = 0; i < len + 1; i++)
{
this->str[i] = str[i];
}
}
String::~String()
{
delete[] str;
len = 0;
}
char &String::Get(int index)
{
return str[index];
}
const char &String::Get(int index) const
{
return str[index];
}