Meeting 121 (11 Feb 2021)
Perhaps it’s time for a more opinionated dialect of C++
- Should I litter my code with (the correct) attributes for every function, or just leave it pretty?
Latest C++: theory vs. reality
C++ vs Rust performance
If you were allowed to make breaking changes to the C++ specification, what features would you modify/replace/remove to make the language better?
A Year of Conference Talks from the Microsoft C++ Team
C/C++ Search Extension
Modern C++: Snippets and Examples
Modern C++ Tip of the Week
INI-config
A single-header C++20 library that converts INI-formatted string literals to a key-value pair list at compile-time.
1#include "ini_config.hpp"
2
3constexpr auto config = R"(
4[Cat]
5color = gray
6lives = 9
7)"_ini;
8
9for (auto kvp : config) {}
10for (auto kvp : config.section("Cat")) {}
11config.get("Cat", "lives"); // => "9"
12config.get<int>("Cat", "lives"); // => 9
13config.get("Dog", "lives"); // => ""
mocxx: a versatile C++ function mocking framework based on Frida, by Guardsquare
A versatile C++ function mocking framework. It replaces a target function with the provided implementation, and integrates well with existing testing and mocking frameworks. (C++17, GPL-3.0)
No macros! Doesn’t support mocking virtual functions yet.
Compile 1 Million Lines Of C++ In ~2 Minutes With A 16 Core Ryzen 9 5950x
Dev-C++
A fast, portable, simple, and free C/C++ IDE for Windows, built in Delphi
Using std::list::splice
to implement a LRU cache
What should the state of a moved-from object be?
Reducing Memory Consumption in Visual Assist
dont_deduce<T>
C++11
1template <class T> struct foo_t { using type = T; };
2template <class T> using foo = typename foo_t<T>::type;
C++20
1template <typename T>
2auto operator+(
3 vec3<T> const& a,
4 std::convertible_to<T> auto const& b
5) -> vec3<T>;
Writing a custom iterator in modern C++ (C++17)
C++ for Swift developers
Wrapping C++ for use in Swift
Tracy Profiler
A real time, nanosecond resolution, remote telemetry, hybrid frame and sampling profiler for games and other applications.
Tracy supports profiling CPU (C, C++11, Lua), GPU (OpenGL, Vulkan, OpenCL, Direct3D 12), memory, locks, context switches, per-frame screenshots and more.