#include <string.h> class String{ public: String(const String& str); String(const char* str); private: char* m_data; }; String::String(const String& str) { int len = strlen(str.m_data) + 1;//在函数中对象可以直接访问private m_data = new char[len]; memset(m_data, 0, len); strncpy(m_data, str.m_data, len - 1); } String::String(const char* str) { int len = strlen(str) + 1; m_data = new char[len]; memset(m_data, 0, len); strncpy(m_data, str, len - 1); } int main() { String str("123"); String str1(str); return 0; }