gpt4 book ai didi

c++ - 为什么我们需要在 C++ 赋值运算符中删除分配的内存?

转载 作者:塔克拉玛干 更新时间:2023-11-03 08:06:48 24 4
gpt4 key购买 nike

<分区>

为什么我们需要 delete 语句?

const MyString& operator=(const MyString& rhs)
{
if (this != &rhs) {
delete[] this->str; // Why is this required?
this->str = new char[strlen(rhs.str) + 1]; // allocate new memory
strcpy(this->str, rhs.str); // copy characters
this->length = rhs.length; // copy length
}
return *this; // return self-reference so cascaded assignment works
}

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com