4.已知String类的原型是:
class String
{
public:
String(const char* str = NULL); //普通的构造函数
String(const String& that); //拷贝构造函数
~String(void);//析构函数
String& operator=(const String& that);//赋值函数
const char* c_str(void) const;//完成和C的字符串兼容;
private:
char* m_str;
};
#include <iostream> #include <cstring> using namespace std; class String { public: /*一个简写的String(const char* str == NULL) { m_str(strcpy((new char[strlen(str?str:"")+1]),str?str:"")); } */ String(const char* str = NULL) { if(str == NULL) { m_str = new char[1]; *m_str = '