关于字符串指针初始化std::string的一个小问题

原创 2015年11月21日 20:02:20

     STL里面的字符串类std::string,它有一个参数为char*的构造函数,今天写代码的时候想到一个问题:我们用一个cha*的指针初始化std::string后,这个char*指针还需要自己主动delete,释放它吗?


今天写了一个小程序试了一下,结论是:需要自己主动释放。

       测试代码:

#include<iostream>


int main()
{
        char *a = new char[10]{'a','b','c','d','\0'};
        std::string b(a);
       
 delete a;
       
  std::cout << b << std::endl;
       
  return 0;
}
~               

       最后输出了正确的结果,程序没有崩溃。

相关文章推荐

std::string的用法

本文主要针对那些有C语言背景知识,而现在开始使用C++语言编程的程序员。事实上,C++继承了大多数C语言的功能,但有些方面还是不得不要留意的,如new和delete取代了malloc和free,且C+...
  • andone23
  • andone23
  • 2010年05月19日 18:31
  • 15489

C++ std::string用法总结

转自:http://blog.csdn.net/lanyzh0909/article/details/6957649
  • gf771115
  • gf771115
  • 2014年08月17日 09:32
  • 18872

std::string一个极其隐晦得问题

std::string一个极其隐晦得问题 昨天做一个dll,代码很快写完了,然而使用得时候总是遇到string内部指针删除错误,郁闷了一天,今天没去公司,好好研究了一下。 首先看下下面这段代码,声...
  • ilvu999
  • ilvu999
  • 2012年09月03日 23:45
  • 627

函数参数用指针或引用传递时发现的一个小问题

今天看php手册时,看到引用那一章节时,有这么一段代码: $baz = "hello world!"; function foo (&$var) { $var =& $GLOBALS["...

关于指针的一个小问题

任务:(《C++ Primer  4th》习题5.18)编写程序定义一个vector对象,其每个元素都是指向string类型的指针...

用指针给数组赋值的一个小问题

问题是这样的, 我打算输入与元素为数组赋值, 然后反向输出数组元素# include int main(void) { int a[10], * p = a, i; for (i...

没有躲过的坑--std::string初始化、最快速判断字符串为空

之前说过,记得给变量初始化。今天突然想到了一个问题,如果声明了一std::string类型,怎么初始化呢?std::string test_string; std::string test_strin...

有关C++中常量字符串的一个小问题

在C++中,常量字符串存储在常量存储区,不允许被修改。 对于一个变量,要考虑到其定义、释放、存储区域、是否允许被修改。 在C++中,内存分为5个区,分别是: 1.栈,就是那些由编译器在需要的时候分配,...

小问题综合 如何实现将文件从一个文件夹复制到另一个文件夹、字符串单斜杠转为双斜杠、浏览文件对话框

1.使用CopyFile函数来实现将一个文件从一个文件夹复制到另一个文件夹中去: //以下代码是线串文件从原始路径lj复制到to_out路径中去 //复制文件夹函数BOOL CopyFile{LPC...

编程两个小问题,C语言中如何读取一行字符串的问题和VS2008中调试出错一个问题

问题一: 经常在链接是报link2001错误,其中一般是函数体没有定义错误。但是排除以上简单的外,还有一种如下无法解析系统文件中的函数定义。如下: LINK : warning LNK4098...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:关于字符串指针初始化std::string的一个小问题
举报原因:
原因补充:

(最多只允许输入30个字)