|
15驿站币
实现一个简易的字符串类,实现将输入的字符串通过对象‘a’和‘b’输出。字符串类的原型‘stringUser’以给出,如下所示:
class stringUser
{
public:
stringUser(const char *str = NULL); //普通构造函数
stringUser(const stringUser &other); //拷贝构造函数
~ stringUser(void); //析构函数
private:
char *m_String; //私有成员,保存字符串
};
请在代码编辑框内补全‘stringUser’类的三个成员函数:构造函数,拷贝构造函数和析构函数。
1. 输入的字符串长度范围: [0, 9];
2. 析构函数中,要求将字符串完整输出(并换行)。
搞不懂如何去实现构造函数和拷贝构造函数,求各位大神教一下。
这样应该可以吧!
- class stringUser
- {
- public:
- stringUser(const char *str = NULL)
- {
- if (!str)
- {
- m_String = NULL;
- return;
- }
- int str_len = strlen(str);
- m_String = new char[str_len + 1];
- memset(m_String, 0, str_len + 1);
- strcpy(m_String, str);
- };
- stringUser(const stringUser &other)
- {
- if (!other.m_String)
- {
- m_String = NULL;
- return;
- }
- int str_len = strlen(other.m_String);
- m_String = new char[str_len + 1];
- memset(m_String, 0, str_len + 1);
- strcpy(m_String, other.m_String);
- };
- ~stringUser(void)
- {
- if (m_String)
- {
- cout << m_String << endl;
- delete[] m_String;
- }
- };
- private:
- char *m_String;
- };
复制代码
|
上一篇: 关于sql数据库的操作下一篇: 一道链表的题,谢谢大佬
|