String类的实现
来源:互联网 发布:vs开发unity3d 编辑:程序博客网 时间:2024/06/07 23:16
class String { private: char *m_data; //私有成员,保存字符串 public: String(const char *str = NULL); //普通构造函数 String(const String &other); //复制构造函数 ~String(void); //析构函数 String & operator =(const String &other); //赋值函数 }; String::String(const char *str = NULL) //带一个指针的普通构造函数 { if(str == NULL) { m_data = new char[1]; //分配一个字节 assert(m_data != NULL); *m_data = '\0'; } else { m_data = new char[strlen(str)+1]; //分配空间容纳str内容 assert(m_data != NULL); strcpy(m_data,str); } } String::String(const String &other) //拷贝构造函数 { m_data = new char[strlen(other.m_data)+1]; assert(m_data != NULL); strcpy(m_data,other.m_data); } String::~String(void) //析构函数 { if(m_data != NULL) { delete []m_data; m_data = NULL; } } String & String::operator=(const String &other) //赋值函数 { if(&other == this) //如果对象与other是同一个对象 return *this; delete []m_data; //释放堆内存 m_data = new char[strlen(other.m_data)+1]; assert(m_data != NULL); strcpy(m_data,other.m_data); return *this; }
0 0
- string类的实现
- String类的实现
- String类的实现
- String类的实现
- String 类的实现
- String类的实现
- string类的实现
- String类的实现
- String类的实现
- string类的实现
- string类的实现
- string类的实现
- string类的实现
- string类的实现
- string类的实现
- String 类的实现
- String类的实现
- String类的实现
- 福喜应用发现-社会化应用分享发现平台
- iOS字符串NSString中去掉空格(或替换为某个字符串)
- ARM Linux Oops使用小结
- 硬件选讲之UART
- 桌面式“摄像技术”网络教学平台截图
- String类的实现
- 手游开发攻防——二、基础篇(更新完)
- win7 全半角转换只能为shift + space 且不能改
- 编译hadoop源码
- 太阳能发电 打造美丽乡村安装太阳能led路灯是关键
- 太阳能草坪灯 打造美丽乡村安装太阳能led路灯是关键
- Lua 异常处理 pcall xpcall debug
- 太阳能路灯生产厂家 打造美丽乡村安装太阳能led路灯是关键
- java I/O流学习笔记