1.RAII:
资源申请即初始化
:#define
_CRT_SECURE_NO_WARNINGS
#include
<iostream>
#include
<stdlib.h>
#include
<string>
using
namespace
std;class
mystr
{public
:char
*p=nullptr
;public
:mystr
(const
char
*str){cout
<<"构建"<<endl
;intlength
=strlen
(str);p=newchar
[length
+ 1];
strcpy
(p,str);p[length
] =&#039;\0&#039;
;}~mystr
(){cout
<<"销毁"<<endl
;delete
[]p;}};void
go(){char
*p=newchar
[100];
//RAII
避免内存泄露,一般情况下,堆上的内存当作栈上来使用
//栈内存有限,希望自动释放,用很大的内存。
mystr
str1
="ABCD"
;}void
main
(){go();cin.get();}运行结果
:构建销 ...


雷达卡


京公网安备 11010802022788号







