【发布时间】:2016-04-02 07:02:36
【问题描述】:
快照是basic_string 类源代码的一部分。以下评论中的透明是什么意思。在我看来,透明这个词是多余的,可以去掉。我说的对吗?
我电脑上的系统是 Visual Studio 2010 RTMRel。
【问题讨论】:
标签: c++ string data-structures stdstring
快照是basic_string 类源代码的一部分。以下评论中的透明是什么意思。在我看来,透明这个词是多余的,可以去掉。我说的对吗?
我电脑上的系统是 Visual Studio 2010 RTMRel。
【问题讨论】:
标签: c++ string data-structures stdstring
我相信这里所说的“透明”是指std::basic_string类型的接口管理着一个可供客户端直接访问的数组。字符串逻辑上是一个元素数组,这意味着它的功能就好像它是一个字符数组,特别是std::basic_string类型将字符存储在一个实际的 字符数组。例如,客户端可以对字符串中各个字符的地址进行指针运算,并保证正常工作。
将其与std::deque 进行对比,std::deque 在逻辑上是 一个数组,但实际上可能实际上 不会被实现为一个数组。想要使用std::deque 的客户无法安全地获取std::deque 元素的原始地址,并以可以保证正确运行的方式对它们进行指针运算。
【讨论】: