Get the latest tech news

Comparison of different C libraries providing generic containers capabilities


Comparison of different C libraries providing generic containers capabilities - P-p-H-d/c-stl-comparison

The goal of this project is to compare several C libraries that provide some STL like capabilities of the C++ (container template) but are targeting classic C language. For example, if a container library manual requests to define some macro for its use, then it won't be considered as a workaround. CharacteristicsSTLM*LIBSTCCMCCTLCollectionsCCCGLIBC languageNA>=C99>=C99>=C99>=C99>=C99>=C11* or >=C23>= C89Pure CNAYYYYYYYHeader onlyYYYYYNYNGeneric mechanismtemplateFEFEACAtype safeYYYYYNY*Ninteger/float supportYYYYYYYY*struct POD supportYYYYYNYY*C++ class supportYYNNNNNNC object supportYYYYYNYY*Copy semanticsYYNNNYNYMove semanticsYYYYYNYNcontainer/basic spatial separationYYNNNNAYNAAdaptator LayerNYNNNNNNBasic emplace supportYYYNNNNNEnhance emplace supportYYNNNNNNIterator supportYYYNYYYNSort algorithmYYYNYYNYEnhanced Sort algorithmYYYNYYNYsingle linkage definitionN*YYYNYNYFull abstractionYYNYNYYNContract violation checksYYNNNNNNNatural usageYNNNNNNNBasic type is storedYYYYYNYNNo explicit instanciationYNNNNYYYprefixed functionYYYYYYYYmemory handlingexceptionabort, exceptionretcoderetcodenoneretcoderetcoderetcodedestructors on exceptionYY*NANANANANANcustom memory supportYYYYNYYNcontext for custom memory supportNYYNNNNNForward declaration supportNNYNNNNNSerializationNJSONNNNNNN C11*: means C11 + extension Y*: Yes with some limitations.

Get the Android app

Or read this on Hacker News

Read more on:

Photo of comparison

comparison

Related news:

News photo

Comparison of MGR, SunView, OpenWindows and X11R6 (2022)

News photo

8-Way Linux OS Comparison On The Framework 12: Squeezing More Performance Out Of Raptor Lake

News photo

Scientists 3D print tumors for cancer research — TissueTinker using 3D bioprinting to create miniature models of healthy and diseased tissue for side-by-side comparison, backed by McGill