C/C++教程

简单string类c++实现

本文主要是介绍简单string类c++实现,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

只实现了普通构造,拷贝构造,析构和赋值四个操作。

但坑比想象的多。

坑1:普通构造如果是nullptr,也要给data分配一个字节空间存放‘\0’,因为空字符串有一个‘\0’

坑2:拷贝构造传参必须用引用,如果是单纯的传实例,调用拷贝构造时需要一个形参存放实例,又相当于一次拷贝构造,陷入死循环

坑3:用strlen()求的是s的长度,但不包含‘\0’,可strcpy时‘\0’是一起拷贝的,所以分配空间时是

strlen(s.data)+1

 

 

这篇关于简单string类c++实现的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!