标签:cpp 个数 支持 不能 厂商 设计 实现 如何 数据
C语言中,其实是使用字符数组来模拟字符串的,如果一个字符数组以\0为结束符的话,那么这个字符数组就是C语言中合法的字符串了。一个字符数组是不是字符串的标准就是是否以\0来作为结束标志。
在C语言中是找不到一个数据类型来单独描述字符串的,要么就通过字符数组,要么就通过char*指针。
为了兼容C语言,C++在原生类型系统中还是没有包含字符串类型,那么C++中是如何支持字符串类型的呢?它是通过库实现的,比如说,与C++同时发布的stl标准库,stl中就有String这个类,该类就是官方承认的C++里面的字符串类型了。但是这么做还是有问题的,比如说在某个实际的工程开发中,也许是不能使用stl标准库的,使用的是另一种库,比如说使用的是Qt,Qt中也提供了一个字符串类型,叫做QString。还有可能使用的是MFC,它提供了CString类。也就是说,只要使用了C++中的一个库,那么库中必然会提供字符串类型出来。这就是C++世界中字符串类型了,可以说没有统一的字符串类型,都是库提供的字符串类型。
我们现在正写一个库,因此我们也必须在DTLib中实现字符串类。所有厂商设计的字符串类的设计基本上是一样的。
其实就是使用面向对象的技术,对C语言中的字符串函数进行封装。
字符串类的实现:String.h String.cpp
标签:cpp 个数 支持 不能 厂商 设计 实现 如何 数据
原文地址:https://www.cnblogs.com/-glb/p/13258697.html