Advertisement

c++面试题解析(第2天)

阅读量:

三、string 类的具体实现

#include
using namespace std;

类String{
public::字符串构造函数接收一个空指针或const char*参数;
字符串复制构造函数接收一个可变参数引用;
析构函数以类名为前缀调用 destructor()方法;
操作符=返回引用类型,并接受一个不可变的字符串引用参数;
成员变量m_data用于存储字符串的字符指针;

// 判断输入参数是否为空 以及 在赋值前对 m_date 进行动态内存分配
String::String(const char *str) {
if (str == NULL) {
// 初始化数据成员 m_date 为一个字符长度的空间
// 并将其第一个字符设置为首字符 '/0'
m_date = new char[1];
m_date[0] = '/0';
} else {
// 初始化数据成员 m_date 其长度加一的位置
// 并将输入字符串复制到该位置
m_date = new char[strlen(str) + 1];
strcpy(m_date, str);
}
}

// 负责将源字符串anot

全部评论 (0)

还没有任何评论哟~