gpt4 book ai didi

c++ - c_str() 是在堆中分配内存吗?

转载 作者:太空宇宙 更新时间:2023-11-04 15:57:53 26 4
gpt4 key购买 nike

<分区>

最近我遇到了 c_str() 的问题。下面是示例代码片段

#include<bits/stdc++.h>
#include<unistd.h>
using namespace std;
class har{

public:
string h;
har(string str){
h=str;
}
};

int main(){


har *hg=new har("harish");
const char *ptr=hg->h.c_str();
delete hg;
cout<<ptr<<endl;
return 0;
}

我得到的输出是“harish”......我已经销毁了对象,但我仍然得到输出......是 c_str() 再次在堆中分配内存。

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