Skip to content

A collection of functions I think would be useful to have in C++.

Notifications You must be signed in to change notification settings

Nathan29006781/Cxx-Helper

Repository files navigation

Cxx-Helper

A collection of functions I think would be useful to have in C++.

Notes: *Can be used by public, but not fully ready for use

*C++20 dependent

Here is a list of features and what each offers:

  1. Colours
  • Terminal colours modification
  • Splitting into RGB channels
  • Inversion and darkening of colours
  • RGB <-> HSV conversion
  1. Containers/Ranges
  • Range Analogues to STL algorithms
  • Circular Queue
  • Check for element in container range or numerical range
  1. Printing
  • Stream operators for
    • Iterators
    • Containers (Arrays, Tuples, Linked Lists, Multi-Dimensional Containers...)
  • Type-safe printf
  • Automatically Timestamped Prints
  1. Iterators
  • Iterator Base Class to avoid boilerplate code
  • Iterator Pair Struct constructible from a variety of views
  1. Time
  • Timer using std::chrono units
  1. Types
  • Concepts for Number Systems
  • Default type-alias for Number Systems
  1. Random
  • RNG
  • Random Container Modification
  1. Sorting
  • Iterator and Range versions of sorting algorithms
  • Step-by-step view
  1. Enumerations
  • Enum Operators
  1. Constants
  • Mathematical Constants with symbolic variables
  • Consteval square root implementation
  1. Math Functions
  • Common Math Functions
  • Variadic versions of number operations (lcm, hyp...)
  1. Geometry
  • 2D Vector
  • Coordinates
  • Angles
    • Typed for radians, degrees...
    • Complex Functions
    • Trigonometric Functions
    • Classification (obtuse, complementary...)
  1. Utilities
  • Convenient macros for control structures
  • Debugging Macros
  • Bool <-> Signum Conversion

About

A collection of functions I think would be useful to have in C++.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Languages