实现单参数strcpy,是你会怎么做?

BeHardOnSelf BeHardOnSelf 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区

auto_ptr<char*> strcpy1(char *s)
{
char *d=new char[(strlen(s)+1)];
char *m=d;
while((*d++=*s++)!='\0');

auto_ptr<char*> ptr(m);
cout<<"in strcpy1 "<<m<<endl;
return ptr;
}

int main(void)
{
char s[]="HEllo";
char **d;
d=strcpy1(s).get();
cout<<*d;
return 0;

}

错在哪该如何解决?有一个笔试题要求完成单参数的拷贝函数!如果是直接返回一个char*类型那么在用完这个函数后得delete
一般可能会忘记做delete,如果用auto_ptr好像又出问题,各位大侠指点一下!
...全文

相关推荐

评论 18
收藏 已收藏
分享
返回顶部
BeHardOnSelf
C++ 语言 65,214 成员 250,514 内容