程序
#include<iostream>
#include<stdio.h>
#include<string.h>
using namespace std;
class String{
private:
char*buffer;
int len;
public:
String(){
len=0;
buffer=new char[len+1];
}
String(const char*str){
len=strlen(str);
buffer=new char[len+1];
memcpy(buffer,str,len);
buffer[len]='\0';
}
String(const String&other){
len=other.len;
buffer=new char[len+1];
memcpy(buffer,other.buffer,len+1);
}
~String(){delete [] buffer;}
const char*c_str() const{return buffer;}
int size() const{return len;}
};
int main(){
String str1;
cout<<"str1: "<<str1.c_str()<<" , size = "<<str1.size()<<endl;
const char*str2="hello world";
String str3(str2);
cout<<"str3: "<<str3.c_str()<<" , size = "<<str3.size()<<endl;
String str4(str3);
cout<<"str4: "<<str4.c_str()<<" , size = "<<str4.size()<<endl;
return 0;
}
测试结果
