MyTinySTL
简介
基于 C++11
的 tinySTL
,这是我的第一个项目,使用了中文文档与中文注释,有不规范或不当的地方还请海涵。刚开始是作为新手练习用途,直到现在已经发布了 2.x.x
版本。实现了大部分 STL 中的容器与函数,但仍存在许多不足与 bug 。从 2.x.x
版本开始,本项目会进入长期维护的阶段,即基本不会增加新的内容,只修复发现的 bug。如发现错误,还请在 Issues
中指出,欢迎 Fork
和 Pull requests
改善代码,谢谢!
支持
- 操作系统
- linux
- windows
- osx
- 编译器
- g++ 5.4 或以上
- clang++ 3.5 或以上
- msvc 14.0 或以上
需要
- 使用 cmake 2.8 来构建项目(可选)
运行
如果你想要运行测试,请先阅读 这个 。
- gcc/clang on linux/osx
- 克隆仓库
$ git clone git@github.com:Alinshans/MyTinySTL.git
$ cd MyTinySTL
- 构建并运行
$ mkdir build && cd build
$ cmake ..
$ make
$ cd ../bin && ./stltest
- msvc on windows
- 克隆仓库或 Download ZIP
- 使用
vs2015
(或vs2017
)打开MSVC/MyTinySTL_VS2015.sln
,配置成Release
模式,(Ctrl + F5)开始执行。
文档
见 Wiki。
测试
见 Test。
Introduction
This is a tinySTL
based on C++11
, which is my first project for practice. I use the Chinese documents and annotations for convenience, maybe there will be an English version later, but now I have no time to do that yet. Now I have released version 2.0.0
. I have achieved the vast majority of the containers and functions of STL
, and there may be some deficiencies and bugs. From the version 2.x.x
, the project will enter the stage of long-term maintenance, i.e., I probably will not add new content but only fix bugs found. If you find any bugs, please point out that in Issues
, or make a Pull requests
to improve it, thanks!
Supported
- os
- linux
- windows
- osx
- complier
- g++ 5.4 or later
- clang++ 3.5 or later
- msvc 14.0 or later
Required
- Use cmake 2.8 to build this project (Optional)
Run test
If you want to run the test, please read this first.
- gcc/clang on linux/osx
- git clone
$ git clone git@github.com:Alinshans/MyTinySTL.git
$ cd MyTinySTL
- build and run
$ mkdir build && cd build
$ cmake ..
$ make
$ cd ../bin && ./stltest
- msvc on windows
- git clone or Download ZIP
- use
vs2015
(orvs2017
) open the fileMSVC/MyTinySTL_VS2015.sln
, configured inRelease
, run this project(Ctrl + F5).
Documents
See Wiki.
Test
See Test.