关注
#include <string.h>
class MyString {
public:
MyString(const char *str);
MyString(const MyString& other);
~MyString();
MyString& operator=(const MyString& other);
public:
// Never be nullptr(or NULL)
char *m_data;
void __copy(const char* str);
};
MyString::MyString(const char *str) : m_data(nullptr) {
__copy(str);
}
MyString::MyString(const MyString& other) : m_data(nullptr) {
__copy(other.m_data);
}
MyString& MyString::operator=(const MyString& other) {
if (this != &other) {
delete[] m_data;
__copy(other.m_data);
}
return *this;
}
MyString::~MyString() {
delete[] m_data;
}
void MyString::__copy(const char* str) {
if (str == nullptr) {
m_data = new char[1];
m_data[0] = '\0';
} else {
int len = strlen(str) + 1;
m_data = new char[len];
strncpy(m_data, str, len);
}
}
查看原帖
点赞 评论
相关推荐
10-13 16:17
上海科技大学 安卓 点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 我是面试官,请用一句话让我破防 #
14109次浏览 96人参与
# 美团开奖 #
177778次浏览 945人参与
# 快手技术岗信息交流阵地 #
15234次浏览 81人参与
# 如果秋招能重来,我会____ #
28009次浏览 241人参与
# 中美关税战对我们有哪些影响 #
36591次浏览 292人参与
# i人适合做什么工作 #
7062次浏览 76人参与
# “vivo”个offer #
31946次浏览 240人参与
# 读研or工作,哪个性价比更高? #
74548次浏览 761人参与
# 华为保温 #
101364次浏览 372人参与
# 哪些瞬间让你真切感受到了工作的乐趣 #
16729次浏览 79人参与
# 小厂实习有必要去吗 #
69422次浏览 344人参与
# 校招生月薪1W算什么水平 #
12797次浏览 96人参与
# 哪些行业值得去? #
2365次浏览 40人参与
# 秋招什么时候开投比较合适? #
109401次浏览 807人参与
# 华为池子有多大 #
106750次浏览 745人参与
# 美团求职进展汇总 #
2803147次浏览 23823人参与
# 上班后和你想的一样吗? #
87042次浏览 666人参与
# 苦尽甘来时,再讲来时路 #
25069次浏览 348人参与
# 为了实习逃课值吗? #
22033次浏览 207人参与
# 大家实习每天都在干啥 #
96661次浏览 535人参与
# 工作压力大怎么缓解 #
119239次浏览 1112人参与
# 如果上班像打游戏,你最想解锁什么技能 #
5036次浏览 50人参与
查看29道真题和解析