Exceptions: Yes or No?

This page summarizes the projects mentioned and recommended in the original post on /r/cpp

SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
  1. expected

    C++11/14/17 std::expected with functional-style extensions

    Exception is part of std, (ex. in std::vector constructor). Exceptions should be used in the "everything is lost" situation. In a situation where exceptions are not activated, the overhead is close to zero. For the rest there is expected (https://github.com/TartanLlama/expected)

  2. SaaSHub

    SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives

    SaaSHub logo
  3. libCat

    🐈‍⬛ A runtime for C++26 w/out libC or POSIX. Smaller binaries, only arena allocators, SIMD, stronger type safety than STL, and value-based errors!

    Placement new is not really a problem, because the factory methods produce a pr-value, and unwrapping the optional should have && and const&& overloads, so assuming that there is a move-constructor or a private shallow copy-constructor then this still works. Placement new (or construct_at) would be used inside of an optional, for instance. Example

  4. magnum

    Lightweight and modular C++11 graphics middleware for games and data visualization

    C++ is similar to C in that there are multiple "styles" of use that vary from project to project. Other, usually newer languages (C#, Python, Rust, etc) tend to have a stronger sense of what idioms should be used. Whereas, for instance, some C++ projects (like some GUI libraries and game/graphics engines) will partially/entirely replace the STL (and older ones may have been around before C++ had a standard library aside from C's), or forbid the use of certain C++ features (example).

  5. AECforWebAssembly

    A port of ArithmeticExpressionCompiler from x86 to WebAssembly, so that the programs written in the language can run in a browser. The compiler has been rewritten from JavaScript into C++.

    In my AEC-to-WebAssembly compiler, I am using custom exception types for internal compiler errors: CorruptCompilationContext, InvalidTypenameException and NotImplementedException. I am handling them in main.

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts

  • C++ Game Engine - Which framework?

    1 project | /r/cpp | 6 May 2022
  • C++ graphic library that works well in Linux systems?

    2 projects | /r/cpp_questions | 14 Apr 2022
  • What to consider when trying to target Web + native platforms (Linux, Windows, macOS, Android, iOS) for a graphics project?

    1 project | /r/GraphicsProgramming | 13 Dec 2021
  • Nominal Types in WebAssembly

    2 projects | news.ycombinator.com | 14 Mar 2026
  • You Are Here

    1 project | news.ycombinator.com | 7 Feb 2026

Did you know that C++ is
the 7th most popular programming language
based on number of references?