如何验证手写 STL 库的正确性?

我在学习c++,请问我想自己写一些stl库练练手,请问有没有这样的测试框架,验证我写的库的正确性?比如我将我写的vector放进去,自动化跑一下,看看…
关注者
94
被浏览
5,507

5 个回答

很有意思的问题,接着我们很容易就能想到,STL库的作者是怎么测试自己的代码的呢?STL的实现不止一种,我们以STL Port为例,去下载代码看看。

STLport: Welcome!

下载后解压缩看看,很醒目的 test 目录有木有,进去看看,果然,单元测试代码在这里~

以vector为例,打开vector_test.cpp,一个500+行的vector测试有木有。

测试类的基类 test/unit/cppunit/cppunit_mini.h 在这里有木有~

直接移植出来用呗,或者你直接用 你写的 vector 替换作者的 ,按照项目编译测试方法运行也行的,但是半成品的 vector 肯定过不了单元测试的。

使用断言即可