« Back to the newsletter

Date Newsletter
Apr 25, 2024 πŸ’» Issue 410 - The Performance Impact of C++'s `final` Keyword
Apr 18, 2024 πŸ’» Issue 409 - Swift for C++ Practitioners, Part 1
Apr 11, 2024 πŸ’» Issue 408 - PS1 Programming Course with MIPS Assembly and C
Apr 04, 2024 πŸ’» Issue 407 - How can I tell C++ that I want to discard a nodiscard value? - The Old New Thing
Mar 28, 2024 πŸ’» Issue 406 - Looking for Pointers: The C++ Memory Safety Debate
Mar 21, 2024 πŸ’» Issue 405 - C++ creator rebuts White House warning
Mar 14, 2024 πŸ’» Issue 404 - C++ safety, in context
Mar 07, 2024 πŸ’» Issue 403 - LLVM's 'RFC: C++ Buffer Hardening' at Google
Feb 29, 2024 πŸ’» Issue 402 - White House: Future Software Should Be Memory Safe
Feb 22, 2024 πŸ’» Issue 401 - Borrow Checker, Lifetimes and Destructor Arguments in C++
Feb 15, 2024 πŸ’» Issue 400 - A Year of C++ Improvements in Visual Studio, VS Code, and vcpkg
Feb 08, 2024 πŸ’» Issue 399 - Using std::expected from C++23
Feb 01, 2024 πŸ’» Issue 398 - CppCast: Reflection for C++26
Jan 25, 2024 πŸ’» Issue 397 - What the func is that?
Jan 18, 2024 πŸ’» Issue 396 - std::clamp still generates less efficient assembly than std::min(max, std::max(min, v)) on GCC and Clang
Jan 11, 2024 πŸ’» Issue 395 - A 2024 Discussion Whether To Convert The Linux Kernel From C To Modern C++
Jan 04, 2024 πŸ’» Issue 394 - Matt "Compiler Explorer" Godbolt: Machine Code Explained
Dec 28, 2023 πŸ’» Issue 393 - Finally <print> support on GCC!!!
Dec 21, 2023 πŸ’» Issue 392 - C++ Should Be C++
Dec 14, 2023 πŸ’» Issue 391 - Advent of Code in C++ Template Metaprogramming
Dec 07, 2023 πŸ’» Issue 390 - Compiler Options Hardening Guide for C and C++
Nov 30, 2023 πŸ’» Issue 389 - Dependencies Belong in Version Control
Nov 23, 2023 πŸ’» Issue 388 - [Roast Me] Why I think C++ is still a desirable coding platform compared to Rust
Nov 16, 2023 πŸ’» Issue 387 - Breaking the MSVC STL ABI (VS DevCom issue)
Nov 09, 2023 πŸ’» Issue 386 - Why does unsafe multithreaded use of an std::unordered_map crash more often than unsafe multithreaded use of a std::map?
Nov 02, 2023 πŸ’» Issue 385 - Bjarne Stroustrup’s Plan for Bringing Safety to C++
Oct 26, 2023 πŸ’» Issue 384 - import CMake; the Experiment is Over!
Oct 19, 2023 πŸ’» Issue 383 - Trying out C++20's modules with Clang and Make
Oct 12, 2023 πŸ’» Issue 382 - Cooperative C++ Evolution – Toward a Typescript for C++ - Herb Sutter - CppCon 2023.
Oct 05, 2023 πŸ’» Issue 381 - cppfront: Autumn update
Sep 28, 2023 πŸ’» Issue 380 - Microsoft guidelines for building reliable and secure C++ programs
Sep 21, 2023 πŸ’» Issue 379 - Clang 17 released
Sep 14, 2023 πŸ’» Issue 378 - Circle may be the future of C++
Sep 07, 2023 πŸ’» Issue 377 - Just for fun: What happens when you shift a register by more than the register size? - The Old New Thing
Aug 31, 2023 πŸ’» Issue 376 - (Life) Advice From The Creator of C++
Aug 24, 2023 πŸ’» Issue 375 - The unexpected cost of shared pointers - Oxla
Aug 17, 2023 πŸ’» Issue 374 - The Evolution of C++ - A Typescript for C++ - Herb Sutter - CppNow 2023
Aug 10, 2023 πŸ’» Issue 373 - What's New for C++ Developers in Visual Studio 2022 17.7 - C++ Team Blog
Aug 03, 2023 πŸ’» Issue 372 - Visualize Macro Expansion for C++ - C++ Team Blog
Jul 27, 2023 πŸ’» Issue 371 - C++23: static operator() and static operator[]
Jul 20, 2023 πŸ’» Issue 370 - Patching GCC to build Actually Portable Executables
Jul 13, 2023 πŸ’» Issue 369 - C++23: The Next C++ Standard
Jul 06, 2023 πŸ’» Issue 368 - Programming in C++ is hard, Software Engineering in C++ is even harder
Jun 29, 2023 πŸ’» Issue 367 - 60 terrible tips for a C++ developer
Jun 22, 2023 πŸ’» Issue 366 - once vs #ifndef
Jun 15, 2023 πŸ’» Issue 365 - What is Name Mangling in C++?
Jun 08, 2023 πŸ’» Issue 364 - Printing double aka the most difficult problem in computer sciences
Jun 01, 2023 πŸ’» Issue 363 - What’s the right hash table API?
May 25, 2023 πŸ’» Issue 362 - Using enum classes as bitmasks
May 18, 2023 πŸ’» Issue 361 - C++20 Support Comes To C++/CLI
May 11, 2023 πŸ’» Issue 360 - The New Boost Website Goes Beta
May 04, 2023 πŸ’» Issue 359 - cppfront (cpp2): Spring update
Apr 27, 2023 πŸ’» Issue 358 - Andrzej's C++ blog: The obvious final step
Apr 20, 2023 πŸ’» Issue 357 - Horrible Code, Clean Performance
Apr 13, 2023 πŸ’» Issue 356 - Most C++ constructors should be explicit
Apr 06, 2023 πŸ’» Issue 355 - A leaner <iostream> in libstdc++ for GCC 13
Mar 30, 2023 πŸ’» Issue 354 - 295 pages on Initialization in Modern C++ :)
Mar 23, 2023 πŸ’» Issue 353 - Effortful Performance Improvements in C++
Mar 16, 2023 πŸ’» Issue 352 - Cheerp 3.0: The most advanced C++ compiler for the Web, now permissively licensed
Mar 09, 2023 πŸ’» Issue 351 - Effortless Performance Improvements in C++: std::vector
Mar 02, 2023 πŸ’» Issue 350 - Implementing C++20 modules in an existing game engine
Feb 23, 2023 πŸ’» Issue 349 - C++23 Is Finalized. Here Comes C++26
Feb 16, 2023 πŸ’» Issue 348 - Unreal Engine C++ Complete Guide
Feb 09, 2023 πŸ’» Issue 347 - Undefined behavior, and the Sledgehammer Principle
Feb 02, 2023 πŸ’» Issue 346 - Web Scraping with C++
Jan 26, 2023 πŸ’» Issue 345 - Kicking the tires of CMake support for C++ Modules
Jan 19, 2023 πŸ’» Issue 344 - Chromium accepting Rust in a clear move to copy what Mozilla have done, replace C++ source code
Jan 12, 2023 πŸ’» Issue 343 - C elements that are not supported in C++🚫
Jan 05, 2023 πŸ’» Issue 342 - Cpp2 and cppfront: Year-end mini-update
Dec 29, 2022 πŸ’» Issue 341 - Fixed-precision formatting of floating-point numbers
Dec 22, 2022 πŸ’» Issue 340 - Modern CMake Packaging: A Guide
Dec 15, 2022 πŸ’» Issue 339 - Using C++ as a scripting language, part 6
Dec 08, 2022 πŸ’» Issue 338 - C++ overtakes Java in language popularity index
Dec 01, 2022 πŸ’» Issue 337 - Falsehoods programmers believe about undefined behavior
Nov 24, 2022 πŸ’» Issue 336 - P2723R0: Zero-initialize objects of automatic storage duration
Nov 17, 2022 πŸ’» Issue 335 - gcc 13 will have <format>
Nov 10, 2022 πŸ’» Issue 334 - Bit-vector manipulations in standard C++
Nov 03, 2022 πŸ’» Issue 333 - The pool of talented C++ developers is running dry
Oct 27, 2022 πŸ’» Issue 332 - C++20 Modules are now supported In CLion!
Oct 20, 2022 πŸ’» Issue 331 - Inkscape is looking for C++ Contributors
Oct 13, 2022 πŸ’» Issue 330 - All Major C++17 Features You Should Know
Oct 06, 2022 πŸ’» Issue 329 - C++20 coroutines: β€œThe bug is in the C++ standard, not GCC.”
Sep 29, 2022 πŸ’» Issue 328 - The Sad State of Debug Performance in C++ -- Vittorio Romeo
Sep 22, 2022 πŸ’» Issue 327 - Can C++ be 10x Simpler & Safer? - Herb Sutter - CppCon 2022
Sep 15, 2022 πŸ’» Issue 326 - My entire C++ Game Programming course is being streamed live on YouTube for free this semester.
Sep 08, 2022 πŸ’» Issue 325 - Epic C++ Coding Standard for Unreal Engine
Sep 01, 2022 πŸ’» Issue 324 - malloc() and free() are a bad API
Aug 25, 2022 πŸ’» Issue 323 - John "God" Carmack: C++ with a C flavor is still the best (also: Python performance "keeps hitting me in the face")
Aug 18, 2022 πŸ’» Issue 322 - New Microsoft library, proxy: Runtime Polymorphism Made Easier Than Ever
Aug 11, 2022 πŸ’» Issue 321 - Circle Metaprogramming: Better Features Make Better Libraries - CppNow 2022
Aug 04, 2022 πŸ’» Issue 320 - July 2022 ISO C++ committee virtual meeting report
Jul 28, 2022 πŸ’» Issue 319 - finally. #embed
Jul 21, 2022 πŸ’» Issue 318 - Upside Down Polymorphic Inheritance: Leveraging P2162 for Fun & Profit
Jul 14, 2022 πŸ’» Issue 317 - VS2022 Performance Enhancements: Faster C++ Development
Jul 07, 2022 πŸ’» Issue 316 - boost::unordered map is a new king of data structures
Jun 30, 2022 πŸ’» Issue 315 - Microsoft guide for Deducing this
Jun 23, 2022 πŸ’» Issue 314 - Undefined behavior can result in time travel (among other things, but time travel is the funkiest), by Raymond Chen
Jun 16, 2022 πŸ’» Issue 313 - TIL about the std::ranges compile time tax everyone using C++20 pays.
Jun 09, 2022 πŸ’» Issue 312 - Benchmarking Malloc with Doom 3
Jun 02, 2022 πŸ’» Issue 311 - Post-mortem of a long-standing bug in video Game Path Of Exile, which was caused by a stale pointer
May 26, 2022 πŸ’» Issue 310 - Compiler Explorer is 10 today!
May 19, 2022 πŸ’» Issue 309 - How different is C++ from C? Contrasting simple Unix SORT programs
May 12, 2022 πŸ’» Issue 308 - Overview of several C++ advanced topics, including rvalue and move, templates, lambda, and more.
May 05, 2022 πŸ’» Issue 307 - boost.org not renewed? Anyone know whatsup with that / where to read docs?
Apr 28, 2022 πŸ’» Issue 306 - New C++ features in GCC 12
Apr 21, 2022 πŸ’» Issue 305 - C++ Complexity - What Makes C++ Complex and how to simplify it a bit
Apr 14, 2022 πŸ’» Issue 304 - For beginners, a crash course introduction to programming for several CPU cores
Apr 07, 2022 πŸ’» Issue 303 - C++23 Will Be Really Awesome
Mar 31, 2022 πŸ’» Issue 302 - C++20 Ranges The Key Advantage - Algorithm Composition
Mar 24, 2022 πŸ’» Issue 301 - Minimum viable declarative GUI in C++
Mar 17, 2022 πŸ’» Issue 300 - To Save C, We Must Save ABI
Mar 10, 2022 πŸ’» Issue 299 - Modern C++ course | University of Bonn, Germany
Mar 03, 2022 πŸ’» Issue 298 - OldNewThing: Zero-cost exceptions aren’t actually zero cost
Feb 24, 2022 πŸ’» Issue 297 - C++ Cheat Sheets & Infographics
Feb 17, 2022 πŸ’» Issue 296 - C++'s Superpower - Matt Godbolt - CPPP 2021
Feb 10, 2022 πŸ’» Issue 295 - LLVM/Clang 14 Ends Feature Development With Better C++20 Support, Armv9 Added
Feb 03, 2022 πŸ’» Issue 294 - Why is quicksort faster than heapsort? And how to make them faster?
Jan 27, 2022 πŸ’» Issue 293 - The mystery of the crash that seems to be on a std::move operation
Jan 20, 2022 πŸ’» Issue 292 - How we used C++20 to eliminate an entire class of runtime bugs
Jan 13, 2022 πŸ’» Issue 291 - Cheat sheets
Jan 06, 2022 πŸ’» Issue 290 - 2021 C++ Standardization Highlights
Dec 30, 2021 πŸ’» Issue 289 - GCC 12 Adds Support For Using The Mold Linker
Dec 23, 2021 πŸ’» Issue 288 - Subtle cppreference humour: Integrals ∫ are non-integral
Dec 16, 2021 πŸ’» Issue 287 - T* makes for a poor optional<T&>
Dec 09, 2021 πŸ’» Issue 286 - My entire C++ Game Programming course is now available online for free.
Dec 02, 2021 πŸ’» Issue 285 - CLion 2021.3: New Remote Development, Better Data Views in Debugger, Docker Toolchain, Custom Compiler, Type Hints, and More
Nov 25, 2021 πŸ’» Issue 284 - Is my cat Turing-complete?
Nov 18, 2021 πŸ’» Issue 283 - Beware of fast-math
Nov 11, 2021 πŸ’» Issue 282 - Visual Studio 2022 now available
Nov 04, 2021 πŸ’» Issue 281 - C++ By Example - A new website for learning C++
Oct 28, 2021 πŸ’» Issue 280 - In C++, is empty() faster than comparing the size with zero?
Oct 21, 2021 πŸ’» Issue 279 - Optimizations enabled by -ffast-math
Oct 14, 2021 πŸ’» Issue 278 - Loop Optimizations: taking matters into your hands
Oct 07, 2021 πŸ’» Issue 277 - There is C and there is C++. C/C++ is not a language. Mixing them is just bad C++.
Sep 30, 2021 πŸ’» Issue 276 - C++20 Coroutines β€” Complete* Guide
Sep 23, 2021 πŸ’» Issue 275 - Borrowing Trouble: The Difficulties Of A C++ Borrow-Checker
Sep 16, 2021 πŸ’» Issue 274 - C++20 Oxymoron: constexpr virtual
Sep 09, 2021 πŸ’» Issue 273 - Bungie article on how they program games like Destiny using C++ and the guidelines they came up with for doing so.
Sep 02, 2021 πŸ’» Issue 272 - Compiler Explorer now supports multiple file compilation and linking
Aug 26, 2021 πŸ’» Issue 271 - [Belay the C++] Best ways to convert an enum to a string
Aug 19, 2021 πŸ’» Issue 270 - C++20 modules with GCC11
Aug 12, 2021 πŸ’» Issue 269 - std::span is not zero-cost on microsoft abi.
Aug 05, 2021 πŸ’» Issue 268 - Edit Your C++ Code while Debugging with Hot Reload in Visual Studio 2022 | Survey Inside
Jul 29, 2021 πŸ’» Issue 267 - Forgetting a single '&' led to bricking of Chrome OS devices globally
Jul 22, 2021 πŸ’» Issue 266 - CppNow 2021: Don't constexpr All the Things
Jul 15, 2021 πŸ’» Issue 265 - Talking Async Ep1: Why C++20 is the Awesomest Language for Network Programming
Jul 08, 2021 πŸ’» Issue 264 - Be Wise, Sanitize - Keeping Your C++ Code Free From Bugs
Jul 01, 2021 πŸ’» Issue 263 - Any Encoding, Ever
Jun 24, 2021 πŸ’» Issue 262 - Visual Studio 2022 Preview 1 now available!
Jun 17, 2021 πŸ’» Issue 261 - <format> in Visual Studio 2019 version 16.10 | C++ Team Blog
Jun 10, 2021 πŸ’» Issue 260 - Computing the number of digits of an integer even faster
Jun 03, 2021 πŸ’» Issue 259 - [Belay the C++] A list of bad practices commonly seen in industrial projects
May 27, 2021 πŸ’» Issue 258 - C++ has a Wikipedia page dedicated to criticisms of it.
May 20, 2021 πŸ’» Issue 257 - C++ for Java Programmers - Losing the Fear
May 13, 2021 πŸ’» Issue 256 - 2x-3x Performance Improvements for Debug Builds | C++ Team Blog
May 06, 2021 πŸ’» Issue 255 - "Should we break the ABI" is the wrong question
Apr 29, 2021 πŸ’» Issue 254 - Guy Davidson - Everything you know about colour is wrong - Meeting C++ online
Apr 22, 2021 πŸ’» Issue 253 - Visual Studio 2022 - coming this Summer
Apr 15, 2021 πŸ’» Issue 252 - A look at LLVM - comparing clamp implementations
Apr 08, 2021 πŸ’» Issue 251 - All C++20 core language features with examples
Apr 01, 2021 πŸ’» Issue 250 - C++23: -> and :: to be replaced by . operator
Mar 25, 2021 πŸ’» Issue 249 - hdoc, the modern documentation tool for C++, is now open source
Mar 18, 2021 πŸ’» Issue 248 - STARTcraft - Complete Beginner Starcraft: Broodwar AI Programming Tutorial with C++ / BWAPI
Mar 11, 2021 πŸ’» Issue 247 - Address Sanitizer for MSVC Now Generally Available | C++ Team Blog
Mar 04, 2021 πŸ’» Issue 246 - Don’t blindly prefer emplace_back to push_back
Feb 25, 2021 πŸ’» Issue 245 - Now announcing: Makefile support in Visual Studio Code!
Feb 18, 2021 πŸ’» Issue 244 - When can the C++ compiler devirtualize a call?
Feb 11, 2021 πŸ’» Issue 243 - Understanding C++ Coroutines by Example - C++ London 2021; Pavel Novikov
Feb 04, 2021 πŸ’» Issue 242 - Threadripper 3990X: The Quest To Compile 1 BILLION Lines Of C++ On 64 Cores
Jan 28, 2021 πŸ’» Issue 241 - Microsoft is working on making the Win32 api available for use in modern C++
Jan 21, 2021 πŸ’» Issue 240 - How can I write a C++ class that iterates over its base classes?
Jan 14, 2021 πŸ’» Issue 239 - Ray Tracing in pure CMake
Jan 07, 2021 πŸ’» Issue 238 - Automate dependencies and building with vcpkg, docker, cmake, and vscode.
Dec 31, 2020 πŸ’» Issue 237 - Music for Coding
Dec 24, 2020 πŸ’» Issue 236 - Why Another C++ (And Moreβ„’) Conference?
Dec 17, 2020 πŸ’» Issue 235 - C++20 Published (ISO/IEC 14882:2020)
Dec 10, 2020 πŸ’» Issue 234 - A Special Kind of Hell: intmax_t in C and C++
Dec 03, 2020 πŸ’» Issue 233 - Interactive C++ with Cling
Nov 26, 2020 πŸ’» Issue 232 - When a Microsecond Is an Eternity: High Performance Trading Systems in C++
Nov 19, 2020 πŸ’» Issue 231 - Herb Sutter Trip report: Autumn ISO C++ standards meeting
Nov 12, 2020 πŸ’» Issue 230 - A libc written in C++
Nov 05, 2020 πŸ’» Issue 229 - Controlling Elegoo Robot Smart Car with ASIO and C++
Oct 29, 2020 πŸ’» Issue 228 - Modern C++ Features - a few features that you may know from Python or JavaScript that you can use in C++ too!
Oct 22, 2020 πŸ’» Issue 227 - 17 Smaller but Handy C++17 Features
Oct 15, 2020 πŸ’» Issue 226 - TIL: Double linked list using one pointer per node.
Oct 08, 2020 πŸ’» Issue 225 - The Community
Oct 01, 2020 πŸ’» Issue 224 - It Is Never a Compiler Bug Until It Is
Sep 24, 2020 πŸ’» Issue 223 - Project-based C++ learning
Sep 17, 2020 πŸ’» Issue 222 - Standard C++20 Modules support with MSVC in Visual Studio 2019 version 16.8 | C++ Team Blog
Sep 10, 2020 πŸ’» Issue 221 - Complete Introduction to the 30 Most Essential Data Structures & Algorithms
Sep 03, 2020 πŸ’» Issue 220 - The problem with C
Aug 27, 2020 πŸ’» Issue 219 - Here I Stand, Free - Allocators and an Inclusive STL
Aug 20, 2020 πŸ’» Issue 218 - CppCast: Modern C++ for Absolute Beginners
Aug 13, 2020 πŸ’» Issue 217 - The β€œarray size constant” antipattern
Aug 06, 2020 πŸ’» Issue 216 - 70x faster file embeds using string literals
Jul 30, 2020 πŸ’» Issue 215 - Smart Pointers: When and Why? (walk-through video with motivational example)
Jul 23, 2020 πŸ’» Issue 214 - Optimizing 128-bit Division
Jul 16, 2020 πŸ’» Issue 213 - Initial Support For C++20 Ranges in MSVC
Jul 09, 2020 πŸ’» Issue 212 - Fixing a common antipattern when loading translations in Qt
Jul 02, 2020 πŸ’» Issue 211 - GCC 11: Change the default dialect to C++17
Jun 25, 2020 πŸ’» Issue 210 - How to write SOLID C++
Jun 18, 2020 πŸ’» Issue 209 - Microsoft: Rust Is the Industry’s β€˜Best Chance’ at Safe Systems Programming
Jun 11, 2020 πŸ’» Issue 208 - Asynchronous Tasks with std::future and std::async from C++11
Jun 04, 2020 πŸ’» Issue 207 - [The Cherno] Move Semantics in C++
May 28, 2020 πŸ’» Issue 206 - Analyzing The Simplest C++ Program
May 21, 2020 πŸ’» Issue 205 - modern c++ gamedev - thoughts & misconceptions
May 14, 2020 πŸ’» Issue 204 - The C++ preprocessor doesn't understand anything about C++, and certainly not templates
May 07, 2020 πŸ’» Issue 203 - Modules are coming - Bryce Adelstein Lelbach - Meeting C++ 2019
Apr 30, 2020 πŸ’» Issue 202 - CppCon 2015: Kate Gregory "Stop teaching C"
Apr 23, 2020 πŸ’» Issue 201 - Default function arguments are the devil
Apr 16, 2020 πŸ’» Issue 200 - Precedence of a proposed |> operator
Apr 09, 2020 πŸ’» Issue 199 - Qt, Open Source and corona
Apr 02, 2020 πŸ’» Issue 198 - Static analysis in GCC 10
Mar 26, 2020 πŸ’» Issue 197 - Modern CMake tutorials, part1: CMake basics
Mar 19, 2020 πŸ’» Issue 196 - C++Now 2020 is Canceled
Mar 12, 2020 πŸ’» Issue 195 - Software optimization resources. C++ and assembly. Windows, Linux, BSD, Mac OS X
Mar 05, 2020 πŸ’» Issue 194 - The Performance Benefits of Final Classes | C++ Team Blog
Feb 27, 2020 πŸ’» Issue 193 - The Day The Standard Library Died
Feb 20, 2020 πŸ’» Issue 192 - C++20 is here!
Feb 13, 2020 πŸ’» Issue 191 - Investigating the Performance Overhead of C++ Exceptions
Feb 06, 2020 πŸ’» Issue 190 - ABI - Now or Never
Jan 30, 2020 πŸ’» Issue 189 - Qt restricts the LTS releases to commercial customers, :(
Jan 24, 2020 πŸ’» Issue 188 - The Hunt for the Fastest Zero
Jan 17, 2020 πŸ’» Issue 187 - How fast can you allocate a large block of memory in C++?
Jan 10, 2020 πŸ’» Issue 186 - C++ Move Semantics - The Complete Guide
Jan 03, 2020 πŸ’» Issue 185 - C++ at the end of 2019
Dec 27, 2019 πŸ’» Issue 184 - C++ at the End of 2019, Survey
Dec 20, 2019 πŸ’» Issue 183 - The situation of std::embed...
Dec 13, 2019 πŸ’» Issue 182 - C++ coroutines: Getting started with awaitable objects
Dec 06, 2019 πŸ’» Issue 181 - How to initialize x from expression y - Howard Hinnant - Meeting C++ 2019 secret lightning talks
Nov 29, 2019 πŸ’» Issue 180 - How to Convert Numbers into Text with std::to_char in C++17
Nov 22, 2019 πŸ’» Issue 179 - Sourcetrail, the interactive source code explorer, is now free and open source
Nov 15, 2019 πŸ’» Issue 178 - Hello World with C++2a modules
Nov 08, 2019 πŸ’» Issue 177 - Tiny C++ game development framework, supports Vulkan, runs everywhere
Nov 01, 2019 πŸ’» Issue 176 - C++ std::string_view for better performance: An example use case
Oct 25, 2019 πŸ’» Issue 175 - Eliminating the Static Overhead of Ranges
Oct 18, 2019 πŸ’» Issue 174 - CppCon 2019: Stephan T. Lavavej - Floating-Point <charconv>: Making Your Code 10x Faster With C++17's Final Boss
Oct 11, 2019 πŸ’» Issue 173 - Why doesn’t C++ have networking support?
Oct 04, 2019 πŸ’» Issue 172 - CppCon 2019: Miro Knejp β€œNon-conforming C++: the Secrets the Committee Is Hiding From You”
Sep 27, 2019 πŸ’» Issue 171 - CppCon 2019: Herb Sutter β€œDe-fragmenting C++: Making Exceptions and RTTI More Affordable and Usable”
Sep 20, 2019 πŸ’» Issue 170 - Open Sourcing MSVC’s STL
Sep 13, 2019 πŸ’» Issue 169 - C++ templates: a language in the language
Sep 06, 2019 πŸ’» Issue 168 - The sad history of Unicode printf-style format specifiers in Visual C++
Aug 30, 2019 πŸ’» Issue 167 - A new thread in C++20 (jthread)
Aug 23, 2019 πŸ’» Issue 166 - Drogon(C++17) becomes one of the fastest web frameworks in the latest TFB benchmark
Aug 16, 2019 πŸ’» Issue 165 - 17 Smaller but Handy C++17 Features
Aug 09, 2019 πŸ’» Issue 164 - fixing c++ with epochs
Aug 02, 2019 πŸ’» Issue 163 - C++20 Is Feature Complete; Here’s What Changes Are Coming
Jul 26, 2019 πŸ’» Issue 162 - std::format in C++20
Jul 19, 2019 πŸ’» Issue 161 - Elemental C++ GUI library
Jul 12, 2019 πŸ’» Issue 160 - Writing a Simple Programming Language from Scratch - Part 1
Jul 05, 2019 πŸ’» Issue 159 - Elements of Programming Authors' Edition – Components Programming (free ebook, by Alex Stepanov and Paul McJones)
Jun 28, 2019 πŸ’» Issue 158 - In support of P1485 β€œBetter keywords for coroutines”
Jun 21, 2019 πŸ’» Issue 157 - Woah.
Jun 14, 2019 πŸ’» Issue 156 - Serenity C++ patterns: The Badge
Jun 07, 2019 πŸ’» Issue 155 - The Story: Bloomberg senior developer Elliot Goodrich
May 31, 2019 πŸ’» Issue 154 - No-one knows the type of char + char
May 24, 2019 πŸ’» Issue 153 - Circle-lang. Metaprogram C++ in C++. Now for download.
May 17, 2019 πŸ’» Issue 152 - Exploring undefined behavior using constexpr
May 10, 2019 πŸ’» Issue 151 - Hedley: A C/C++ header to help move #ifdefs out of your code
May 03, 2019 πŸ’» Issue 150 - Herb Sutter [ACCU 2019] De-fragmenting C++: Making exceptions more affordable and usable
Apr 26, 2019 πŸ’» Issue 149 - Top 25 C++ API design mistakes and how to avoid them
Apr 19, 2019 πŸ’» Issue 148 - Understanding when not to std::move in C++
Apr 12, 2019 πŸ’» Issue 147 - lvalues, rvalues, glvalues, prvalues, xvalues, help!
Apr 05, 2019 πŸ’» Issue 146 - Visual Studio 2019 is out
Mar 29, 2019 πŸ’» Issue 145 - Introduction into an Automated C++ Build Setup with Jenkins and CMake
Mar 22, 2019 πŸ’» Issue 144 - C++ Team Blog | Game performance and compilation time improvements in Visual Studio 2019
Mar 15, 2019 πŸ’» Issue 143 - Usability improvements in GCC 9
Mar 08, 2019 πŸ’» Issue 142 - Kona: A trip report
Mar 01, 2019 πŸ’» Issue 141 - C++, it’s not you. It’s me.
Feb 22, 2019 πŸ’» Issue 140 - The Knightmare of Initialization in C++
Feb 15, 2019 πŸ’» Issue 139 - Microsoft: 70 percent of all security bugs are memory safety issues | ZDNet
Feb 08, 2019 πŸ’» Issue 138 - Everything You Never Wanted to Know About CMake
Feb 01, 2019 πŸ’» Issue 137 - C++ Modules Might Be Dead-on-Arrival
Jan 25, 2019 πŸ’» Issue 136 - Visual Studio 2019 Preview 2: C++ productivity, code optimizer and Cmake improvements
Jan 18, 2019 πŸ’» Issue 135 - The next big Thing - Andrei Alexandrescu - Meeting C++ 2018 Opening Keynote
Jan 11, 2019 πŸ’» Issue 134 - Initialization in C++ is Seriously Bonkers
Jan 04, 2019 πŸ’» Issue 133 - "Modern" C++ Lamentations
Dec 28, 2018 πŸ’» Issue 132 - Intel Contributes Its Parallel STL Implementation To LLVM
Dec 21, 2018 πŸ’» Issue 131 - Firefox 64 built with GCC and Clang
Dec 14, 2018 πŸ’» Issue 130 - Stop with the CTAD FUD!
Dec 07, 2018 πŸ’» Issue 129 - Standard Ranges
Nov 30, 2018 πŸ’» Issue 128 - Python-Like enumerate() In C++17
Nov 23, 2018 πŸ’» Issue 127 - CppCon 2018: Borislav Stanimirov β€œThe Bad Big Wolf Meets Riding Hood Little Red”
Nov 16, 2018 πŸ’» Issue 126 - CppCon 2018: Matt Godbolt β€œThe Bits Between the Bits: How We Get to main()”
Nov 09, 2018 πŸ’» Issue 125 - Common Misconceptions of C++
Nov 02, 2018 πŸ’» Issue 124 - CppCon 2018: Stoyan Nikolov β€œOOP Is Dead, Long Live Data-oriented Design”
Oct 26, 2018 πŸ’» Issue 123 - CppCon 2018: Hana DusΓ­kovΓ‘ β€œCompile Time Regular Expressions”
Oct 19, 2018 πŸ’» Issue 122 - +!!""
Oct 12, 2018 πŸ’» Issue 121 - Why Optional References Didn’t Make It In C++17
Oct 05, 2018 πŸ’» Issue 120 - CppCon 2018: Herb Sutter β€œThoughts on a more powerful and simpler C++ (5 of N)”
Sep 28, 2018 πŸ’» Issue 119 - CppCon 2018: Bjarne Stroustrup β€œConcepts: The Future of Generic Programming (the future is here)”
Sep 21, 2018 πŸ’» Issue 118 - How to Remove Pointers from a Vector in C++
Sep 14, 2018 πŸ’» Issue 117 - Firefox Is Now Built With Clang+LTO Everywhere, Sizable Performance Wins For Linux
Sep 07, 2018 πŸ’» Issue 116 - BjΓΆrn Fahller: My favorite memory leak
Aug 31, 2018 πŸ’» Issue 115 - Five productivity features for C++ in Visual Studio 2017 15.8
Aug 24, 2018 πŸ’» Issue 114 - A Bug in the C++ Standard
Aug 17, 2018 πŸ’» Issue 113 - Field-testing Herb Sutter's Modest Proposal to Fix ADL
Aug 10, 2018 πŸ’» Issue 112 - C++ Antipatterns
Aug 03, 2018 πŸ’» Issue 111 - How to *Efficiently* Convert a String to an int in C++
Jul 27, 2018 πŸ’» Issue 110 - The Value of Undefined Behavior
Jul 20, 2018 πŸ’» Issue 109 - An overview of build systems (mostly for C++ projects)
Jul 13, 2018 πŸ’» Issue 108 - P1105R0: Leaving no room for a lower-level language: A C++ Subset
Jul 06, 2018 πŸ’» Issue 107 - Announcing C++ Just My Code Stepping in Visual Studio
Jun 22, 2018 πŸ’» Issue 106 - [Interview] "What's all the C Plus Fuss? Bjarne Stroustrup warns of dangerous future plans for his C++"
Jun 15, 2018 πŸ’» Issue 105 - Interesting Book: The Modern C++ Challenge
Jun 08, 2018 πŸ’» Issue 104 - One year of C
Jun 01, 2018 πŸ’» Issue 103 - A new fast hash table in response to Google’s new fast hash table
May 25, 2018 πŸ’» Issue 102 - Closing Keynote: Undefined Behavior and Compiler Optimizations - John Regehr [C++Now 2018]
May 18, 2018 πŸ’» Issue 101 - Igor's C++ Grimoire
May 11, 2018 πŸ’» Issue 100 - Announcing: MSVC Conforms to the C++ Standard
May 04, 2018 πŸ’» Issue 99 - What's the size of that vector, anyway?
Apr 27, 2018 πŸ’» Issue 98 - Vcpkg (library manager) - now also on Linux and macOS!
Apr 20, 2018 πŸ’» Issue 97 - The C++ committee has taken off its ball and chain
Apr 13, 2018 πŸ’» Issue 96 - 5 Reasons NOT to Use std::ostream for Human-Readable Output
Apr 06, 2018 πŸ’» Issue 95 - Deprecating Raw Pointers in C++20
Mar 30, 2018 πŸ’» Issue 94 - Programming correct and efficient parallel code in C++ is still very elusive for the uninitiated
Mar 23, 2018 πŸ’» Issue 93 - Oh, lock-free circular buffers, yay! Hey, no 2D graphics? Jacksonville trip report
Mar 16, 2018 πŸ’» Issue 92 - lvalues, rvalues, glvalues, prvalues, xvalues, help!
Mar 09, 2018 πŸ’» Issue 91 - Clang is now used to build Chrome for Windows
Mar 02, 2018 πŸ’» Issue 90 - p0907r0: Signed Integers are Two’s Complement
Feb 23, 2018 πŸ’» Issue 89 - Results of the poll about the most used C/C++ IDEs
Feb 16, 2018 πŸ’» Issue 88 - The 15 C++11 features you must really use in your C++ projects.
Feb 09, 2018 πŸ’» Issue 87 - Native ImGui in the Browser
Feb 02, 2018 πŸ’» Issue 86 - Matt Godbolt explaining the Meltdown and Spectre exploits
Jan 26, 2018 πŸ’» Issue 85 - C++ Core Check in Visual Studio 2017 15.6 Preview 2
Jan 19, 2018 πŸ’» Issue 84 - Spectre mitigations in MSVC
Jan 12, 2018 πŸ’» Issue 83 - Conan C/C++ Package Manager Hits 1.0
Jan 05, 2018 πŸ’» Issue 82 - C++ Status at the end of 2017
Dec 29, 2017 πŸ’» Issue 81 - Speeding up the Build of C and C++ Projects
Dec 22, 2017 πŸ’» Issue 80 - How to Write Your Own C++ Game Engine
Dec 15, 2017 πŸ’» Issue 79 - Broken Warnings Theory
Dec 08, 2017 πŸ’» Issue 78 - Why choose sum types over exceptions?
Dec 01, 2017 πŸ’» Issue 77 - Intel offers Parallel STL implementation to GNU libstdc++
Nov 24, 2017 πŸ’» Issue 76 - What should be part of the C++ standard library?
Nov 17, 2017 πŸ’» Issue 75 - MSVC conformance improvements in Visual Studio 2017 version 15.5
Nov 10, 2017 πŸ’» Issue 74 - CppCon 2017: Louis Dionne β€œRuntime Polymorphism: Back to the Basics”
Nov 03, 2017 πŸ’» Issue 73 - Common C++ Modules TS Misconceptions
Oct 27, 2017 πŸ’» Issue 72 - Best unkown MSVC flag : d2cgsummary (compile time analysis)
Oct 20, 2017 πŸ’» Issue 71 - TIL C++ has 'and', 'or' and 'not'.
Oct 13, 2017 πŸ’» Issue 70 - Millennials Are Killing The Modules TS
Oct 06, 2017 πŸ’» Issue 69 - CppCon 2017: Herb Sutter β€œMeta: Thoughts on generative C++”
Sep 29, 2017 πŸ’» Issue 68 - Bjarne Stroustrup awarded 2017 Faraday Medal
Sep 22, 2017 πŸ’» Issue 67 - Useful GCC warning options not enabled by -Wall -Wextra
Sep 15, 2017 πŸ’» Issue 66 - MSVC now has (partial) two-phase name lookup!
Sep 08, 2017 πŸ’» Issue 65 - C++17 is formally approved
Sep 01, 2017 πŸ’» Issue 64 - Understanding the meaning of lvalues and rvalues in C++
Aug 25, 2017 πŸ’» Issue 63 - LLVM on Windows now supports PDB Debug Info
Aug 18, 2017 πŸ’» Issue 62 - C++17 Features And STL Fixes In VS 2017 15.3
Aug 11, 2017 πŸ’» Issue 61 - C++17 in details: Filesystem
Aug 04, 2017 πŸ’» Issue 60 - What Books to Read to Get Better In C++
Jul 28, 2017 πŸ’» Issue 59 - Metaclasses: Thoughts on generative C++
Jul 21, 2017 πŸ’» Issue 58 - Boost to move to cmake build and test
Jul 14, 2017 πŸ’» Issue 57 - How not to use DLLs
Jul 07, 2017 πŸ’» Issue 56 - Functional Programming using C++ - Introducing functional programming
Jun 30, 2017 πŸ’» Issue 55 - We Ported Some Of Our Code To C++ And Things Became Much Much Faster
Jun 23, 2017 πŸ’» Issue 54 - Yet another "Java faster than C++" claim
Jun 16, 2017 πŸ’» Issue 53 - The real difference between struct and class
Jun 09, 2017 πŸ’» Issue 52 - Why I Put 'const' On The Right
Jun 02, 2017 πŸ’» Issue 51 - Writing a Really, Really Fast JSON Parser
May 26, 2017 πŸ’» Issue 50 - Learn CMake's Scripting Language in 15 Minutes
May 19, 2017 πŸ’» Issue 49 - Walter Bright believes memory safety will kill C. Scott Meyers says Wow.
May 12, 2017 πŸ’» Issue 48 - Using C++ Modules in Visual Studio 2017
May 05, 2017 πŸ’» Issue 47 - A true heterogeneous container in C++
Apr 28, 2017 πŸ’» Issue 46 - Visual Studio Code C/C++ extension April 2017 Update (An amazing update!)
Apr 21, 2017 πŸ’» Issue 45 - An Introduction to Reflection in C++
Apr 14, 2017 πŸ’» Issue 44 - Understanding Dynamic Linking in C++
Apr 07, 2017 πŸ’» Issue 43 - Choosing C++ Over C
Mar 31, 2017 πŸ’» Issue 42 - Things I love about Rust while being a C++ programmer
Mar 24, 2017 πŸ’» Issue 41 - Smelly std::pair and std::tuple
Mar 17, 2017 πŸ’» Issue 40 - CppNow 2017 Keynote - Niko Matsakis - Rust: Hack Without fear!
Mar 10, 2017 πŸ’» Issue 39 - Visual Studio 2017 Released
Mar 03, 2017 πŸ’» Issue 38 - "I Wrote The Fastest Hashtable" by Malte Skarupke
Feb 24, 2017 πŸ’» Issue 37 - The C++17 Lands
Feb 17, 2017 πŸ’» Issue 36 - Undefined behavior in C and C++ programs
Feb 10, 2017 πŸ’» Issue 35 - STL Fixes In VS 2017 RTM
Feb 03, 2017 πŸ’» Issue 34 - How C++ lambda expressions can improve your Qt code
Jan 27, 2017 πŸ’» Issue 33 - Initialization in C++ is bonkers
Jan 20, 2017 πŸ’» Issue 32 - Pros and Cons of Alternative Function Syntax in C++
Jan 13, 2017 πŸ’» Issue 31 - g++7 is C++17 complete!
Jan 06, 2017 πŸ’» Issue 30 - Nuwen MinGW distro updated with GCC 6.3 and Boost 1.63
Dec 30, 2016 πŸ’» Issue 29 - An amazing set of resources for optimizing C++ and assembly for different processors and operating systems.
Dec 23, 2016 πŸ’» Issue 28 - Visual C++ is switching to simpler major.minor versioning starting with 2017
Dec 16, 2016 πŸ’» Issue 27 - C++17 std::variant lands in LLVM
Dec 09, 2016 πŸ’» Issue 26 - Embedding python in C++ with boost::python
Dec 02, 2016 πŸ’» Issue 25 - cereal - A C++11 library for serialization
Nov 25, 2016 πŸ’» Issue 24 - CLion 2016.3 released - with more C++11/14 support, remote debug on Windows, CMake workflow changes and much more
Nov 18, 2016 πŸ’» Issue 23 - GCC trunk is -std=c++17 ready
Nov 11, 2016 πŸ’» Issue 22 - Hitler on C++17
Nov 04, 2016 πŸ’» Issue 21 - Watch out - Qt headers suppress warnings with Visual Studio
Oct 28, 2016 πŸ’» Issue 20 - C++ Standards Committee Papers: 2016-10 pre-Issaquah
Oct 21, 2016 πŸ’» Issue 19 - The β€œunsigned” Conundrum
Oct 14, 2016 πŸ’» Issue 18 - All CppCon 2016 Videos are Now on YouTube
Oct 07, 2016 πŸ’» Issue 17 - New free eBook: Practical C++ Metaprogramming
Sep 30, 2016 πŸ’» Issue 16 - Boost version 1.62.0
Sep 23, 2016 πŸ’» Issue 15 - Vcpkg: a tool to acquire and build C++ open source libraries on Windows
Sep 16, 2016 πŸ’» Issue 14 - I once began writing this C++ tutorial. Do you think it is worth continuing?
Sep 09, 2016 πŸ’» Issue 13 - Short C++ Coding Style Survey
Sep 02, 2016 πŸ’» Issue 12 - "modern CMake" - Slides
Aug 26, 2016 πŸ’» Issue 11 - What's new in KDevelop 5.0?
Aug 19, 2016 πŸ’» Issue 10 - STL Fixes In VS 2015 Update 3
Aug 12, 2016 πŸ’» Issue 9 - std::map and std::unordered_map performance bug #2 - slow count
Aug 05, 2016 πŸ’» Issue 8 - operator <-
Jul 29, 2016 πŸ’» Issue 7 - Code behaving differently in C90, C99, C11, C++98, and C++11
Jul 22, 2016 πŸ’» Issue 6 - Zeroing Memory is Hard (VC++ 2015 arrays)
Jul 15, 2016 πŸ’» Issue 5 - Parameter or Argument?
Jul 08, 2016 πŸ’» Issue 4 - Final features of C++17
Jul 01, 2016 πŸ’» Issue 3 - The C++ Lands
Jun 24, 2016 πŸ’» Issue 2 - Typedef Literacy
Jun 17, 2016 πŸ’» Issue 1 - "Safe C++ Subset" Is Vapourware
Β» Subscribe to the Awesome C++ Weekly Β«
to know all the trending news, articles and projects