返回排行榜

Alinshans/MyTinySTL

C++

Achieve a tiny STL in C++11

stldata-structurealgorithmcppcpp-librarycpp11
Star 增长趋势
Star
12.5k
Forks
3.3k
周增长
Issues
61
5k10k
2016年11月2020年1月2023年4月2026年7月
README

MyTinySTL

Build Status Build Status Release License Chat

简介

基于 C++11tinySTL,这是我的第一个项目,使用了中文文档与中文注释,有不规范或不当的地方还请海涵。刚开始是作为新手练习用途,直到现在已经发布了 2.x.x 版本。实现了大部分 STL 中的容器与函数,但仍存在许多不足与 bug 。从 2.x.x 版本开始,本项目会进入长期维护的阶段,即基本不会增加新的内容,只修复发现的 bug。如发现错误,还请在 Issues 中指出,欢迎 ForkPull requests 改善代码,谢谢!

支持

  • 操作系统
    • linux
    • windows
    • osx
  • 编译器
    • g++ 5.4 或以上
    • clang++ 3.5 或以上
    • msvc 14.0 或以上

需要

  • 使用 cmake 2.8 来构建项目(可选

运行

如果你想要运行测试,请先阅读 这个

  • gcc/clang on linux/osx
  1. 克隆仓库
$ git clone git@github.com:Alinshans/MyTinySTL.git
$ cd MyTinySTL
  1. 构建并运行
$ mkdir build && cd build
$ cmake ..
$ make
$ cd ../bin && ./stltest
  • msvc on windows
  1. 克隆仓库或 Download ZIP
  2. 使用 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
  1. git clone
$ git clone git@github.com:Alinshans/MyTinySTL.git
$ cd MyTinySTL
  1. build and run
$ mkdir build && cd build
$ cmake ..
$ make
$ cd ../bin && ./stltest
  • msvc on windows
  1. git clone or Download ZIP
  2. use vs2015(or vs2017) open the file MSVC/MyTinySTL_VS2015.sln, configured in Release, run this project(Ctrl + F5).

Documents

See Wiki.

Test

See Test.

相关仓库
huihut/interview

📚 C/C++ 技术面试基础知识总结,包括语言、程序库、数据结构、算法、系统、网络、链接装载库等知识及面试经验、招聘、内推等信息。This repository is a summary of the basic knowledge of recruiting job seekers and beginners in the direction of C/C++ technology, including language, program library, data structure, algorithm, system, network, link loading library, interview experience, recruitment, recommendation, etc.

C++Otherinterviewinterview-questions
interview.huihut.com
38.1k8.1k
assimp/assimp

The official Open-Asset-Importer-Library Repository. Loads 40+ 3D-file-formats into one unified and clean data structure.

C++Otherasset-pipelineassets
assimp.org
13.1k3.2k
electronicarts/EASTL

EASTL stands for Electronic Arts Standard Template Library. It is an extensive and robust implementation that has an emphasis on high performance.

C++BSD 3-Clause "New" or "Revised" Licenseeastlstl
9.3k1k
earthtojake/text-to-cad

A collection of agent skills for CAD, robotics and hardware design

JavaScriptnpmMIT Licenseagentsai-agents
cadskills.xyz
9.2k1k
CadQuery/cadquery

A python parametric CAD scripting framework based on OCCT

PythonPyPIOtherpythonparametric
cadquery.org
5.5k520
Adam-CAD/CADAM

CADAM is the open source text-to-CAD web application

TypeScriptnpmGNU General Public License v3.0aicad
adam.new/cadam
4.8k598
tangtangcoding/C-C-

程序员相关电子书资料免费分享,欢迎关注个人微信公众号:编程与实战

javapdf
4.7k1.2k
slic3r/Slic3r

Open Source toolpath generator for 3D printers

C++GNU Affero General Public License v3.03d-printingcam
slic3r.org
3.6k1.3k
jscad/OpenJSCAD.org

JSCAD is an open source set of modular, browser and command line tools for creating parametric 2D and 3D designs with JavaScript code. It provides a quick, precise and reproducible method for generating 3D models, and is especially useful for creating ready-to-print 3D designs.

JavaScriptnpmMIT Licensejavascript3d-design
openjscad.xyz
3.2k561
ETLCPP/etl

Embedded Template Library

C++MIT Licensec-plus-plusembedded-applications
etlcpp.com
3.1k530
sonic2kk/steamtinkerlaunch

Linux wrapper tool for use with the Steam client for custom launch options and 3rd party programs

ShellGNU General Public License v3.0stlsteam
2.8k88
Dobiasd/FunctionalPlus

Functional Programming Library for C++. Write concise and readable C++ code.

C++Boost Software License 1.0rangecomposition
daiw.de/fplus-api-search/
2.3k177