【问题标题】:Unit tests for basic_string equivalentbasic_string 等效的单元测试
【发布时间】:2012-11-09 18:03:58
【问题描述】:

我正在完成一个自定义字符串类的开发。当然,它旨在等同于 basic_string ,并为其预期目的定制内部存储。我正在寻找一个测试工具,可以让它通过与 C++ 标准相关的步伐。我已经看到 libstdc++ 有一个测试套件。但是,我一直找不到它。

【问题讨论】:

  • 为什么不使用char_traits 和带有basic_string 的语言环境,而不是自己重写所有字符串?
  • “为预期目的定制的内部存储”是什么意思? char_traits 对我解释该短语的大多数方式都无济于事,但 allocator 可能。
  • 我们已经使用自定义版本的 basic_string。有一些原因 - 有些好,有些可能不好。尽管如此,它工作得很好,并提供了有用的好处。在任何情况下,类都允许字符串使用不同的“内部存储模型”,例如,常见的简单向量、某些 Microsoft 版本所做的小字符串优化、“写入时复制”优化,或者在我的情况下,本质上是vector的链表。 basic_string 是/应该与所有这些无关。我的案例需要自定义迭代器,而我想要测试的正是这些迭代器。
  • @Hamp 请注意,在 C++11 中,它们最终要求存储是连续的,因为它对于向量来说是连续的,因此您的大多数选项在技术上将不再符合要求(这并不意味着你仍然不能使用它们)。

标签: c++ string testing stdstring


【解决方案1】:

许可问题以及所有无法承受的问题,您始终可以使用 libc++ test cases for strings。测试系统基于 CMake,非常易于理解/集成。

【讨论】:

  • 谢谢。这就是我正在寻找的东西。我会检查许可证的可用性。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-11-19
  • 2010-09-19
相关资源
最近更新 更多