//#include<iostream>
//using namespace std;
//#pragma warning(disable :4996)
//class  String
//{
//public:
//	/*String()
//		:_str(new char[strlen("")+1])
//	{
//		*_str = '\0';
//	}
//	String(const char*s)
//		:_str(new char[strlen(s) + 1])
//	{
//		strcpy(_str, s);
//	}*/
//	String(const char* s = "")
//		:_str(new char[strlen(s) + 1])
//	{
//		strcpy(_str, s);
//	}
//	String(const String& s)
//		:_str(new char[(strlen(s._str))+1])
//	{
//		strcpy(_str, s._str);
//	}
//	String& operator=(const String& s)
//	{
//		if (this != &s)
//		{
//			delete[] _str;//重新赋值时需释放原来的空间,否则会内存泄露
//			_str = new char[(strlen(_str)) + 1];
//			strcpy(_str, s._str);
//		}
//		return *this;
//	}
//
//	~String()
//	{
//		delete[] _str;
//	}
//	void Display()
//	{
//		cout << _str << endl;
//	}
//private:
//	char* _str;
//};
//void Test1()
//{
//	/*String s1;
//	s1.Display();
//
//	String s2(s1);
//	s2.Display();*/
//
//	String s1("abcd");
//	s1.Display();
//	String s2;
//	s2.Display();
//
//	s2 = s1;
//	s2.Display();
//
//
//}
//int main()
//{
//	Test1();
//	system("pause");
//	return 0;
//}

要注意内存管理,很容易内存泄漏哦!