C++
C++ is one of the most widely used programming languages in the world, and it is very flexible: Developers can work at the highest levels of abstraction, or at the processor level of the target architecture. C++ provides thoroughly optimized standard libraries, and enables access to low-level hardware features. C++ is used to develop games, spreadsheets, word processing software, and other desktop applications, embedded software, device drivers, high performance computing solutions, compilers and assemblers, web servers, mobile apps and operating systems.
C++ was created as an extension to the C programming language, which allows the use of raw pointers, arrays, null-terminated character strings, and many other features that enable great performance, but can also be a source of serious bugs that are hard to detect.
As C++ has evolved, the need to use C-style idioms has diminished, but the old C-programming facilities are still there if you need them. Backwards compatibility has always been a big thing for the C++ community, as this protects the investments made by companies and organizations all over the world into developing vast and complex software solutions.
Fast Linear Algebra Classes for Games and Graphics
The library contains a set of linear algebra classes and function that are optimized for games and other graphic intensive apps. The operations are implemented using a blend of SIMD and regular C/C++, performing as well as, and sometimes outperforming, the DirectXMath library. more…
Single Instruction Multiple Data (SIMD)
Single Instruction Multiple Data (SIMD) is a parallel computing technology where a single instruction operates on multiple values at the same time. SIMD is used to implement artificial intelligence (AI), machine learning (ML), high performance graphics, and other data science solutions. SIMD enables efficient data processing and increased computational performance. more…
Optimized basic math functions
In C++, like any other programming language, computations are performed using the available set of operators and a set of core mathematical functions provided by the standard C and C++ libraries.
Complex computations are put together using this functionality as building blocks. The header,
HCCMath.h
provides alternatives to many of the core mathematical function that is specified in
the C and C++ standards. All of the functions can be constexpr
evaluated, and several offer
surprising performance benefits as well. more…
Best practices for safer C++ development
Safe coding practices has never been more important, and historically the C and C++ community has emphasized performance and backwards compatibility. This is now changing rapidly as safety concerns are being addressed vigorously by parties both inside, and outside, the standard C and C++ committees.
Modern C++ tool chains are significantly more secure than before more…