TGViewer
Channel Public Channel
C++ - Reddit

C++ - Reddit

@r_cpp

Stay up-to-date with everything C++!
Content directly fetched from the subreddit just for you.

Join our group for discussions : @programminginc

Powered by : @r_channels
Subscribers
229
Photos
48
Videos
8
Links
25.5K

Showing posts older than #24442 · Back to latest

Older Posts 20 shown
Post #24440 21
Why everyone hates on C/C++ source generation?

It allows me to do magical reflection-related things in both C and C++

* it's faster than in-language metaprogramming (see zig's metaprog for example, slows down hugely the compiler) (and codegen is faster because the generator can be written in C itself and run natively with -O3 instead of being interpreted by the language's metaprogramming vm, plus it can be easily be executed manually only when needed instead of at each compilation like how it happens with in language metaprog.).

* it's easier to debug, you can print stuff during the codegen, but also insert text in the output file

* it's easier to read, write and maintain, usually procedural meta programming in other languages can get very "mechanical" looking, it almost seems like you are writing a piece of the compiler (for example

pub fn Vec(comptime T: type) type {
const fields = _std.builtin.Type.StructField{
.{ .name = "x", .type = T, .defaultvalue = null, .iscomptime = false, .alignment = 0 },
.{ .name = "y", .type = T, .defaultvalue = null, .iscomptime = false, .alignment = 0 },
.{ .name = "z", .type = T, .defaultvalue = null, .iscomptime = false, .alignment = 0 },
.{ .name = "w", .type = T, .defaultvalue = null, .iscomptime = false, .alignment = 0 },
};
return @Type(.{ .Struct = .{
.layout = .auto,
.fields = fields0..,
.decls = &.{},
.istuple = false,
}});
}

versus sourcegen script that simply says "struct {name} ..."

\* it's the only way to do stuff like SOA for now.. and c++26 reflection looks awful (and super flow)

However I made a post about it on both r/C
Programming and r/cpp and everyone hated on it

https://redd.it/1pgoc4y
@r_cpp
Reddit From the cpp community on Reddit Explore this post and more from the cpp community
Post #24439 20
BEEP-8 – compile C++20 to a tiny ARM ROM and run it instantly in a browser

I’ve been working on a small side project called BEEP-8 and thought some C++ folks might find it interesting.

The idea is:

* you write C++20 (subset) against a small SDK
* cross-compile it to a ROM image for a tiny ARM-based “console”
* open a URL, point it at the ROM, and it runs immediately in your browser on PC or phone

No native install, no WASM glue – the browser is just hosting an emulator for a fixed virtual machine.

What the target looks like

* CPU: software ARMv4-ish core, integer-only, fixed 4 MHz “virtual clock”
* Memory: 1 MB RAM, 1 MB ROM
* Video: simple 8/16-bit-style VDP (tilemaps, sprites, 16-colour PICO-8-compatible palette)
* Audio: small tone/noise APU
* Input: buttons plus touch-friendly controls so it works on phones as well

From user code you never touch JS or WebGL; it just looks like a small C++ API plus some memory-mapped registers.

Toolchain / workflow

1. `git clone` [`https://github.com/beep8/beep8-sdk.git`](https://github.com/beep8/beep8-sdk.git)
* The repo includes a preconfigured GNU Arm GCC cross-compiler in-tree, so there’s no separate compiler install.
2. Write code in C or C++20 (integer-only environment) using the SDK headers.
3. Run `make` to build a `.b8` ROM for the virtual ARM machine.
4. Open [`https://beep8.org`](https://beep8.org) (or your own self-hosted copy), select the ROM, and it boots and runs in the browser at 60 fps.

Links

* Live console + sample games/demos (runs directly in the browser): [https://beep8.org](https://beep8.org)

SDK, toolchain, and source (MIT-licensed):
[https://github.com/beep8/beep8-sdk](https://github.com/beep8/beep8-sdk)

I’m curious what the C++ community thinks about this kind of target:

* Would you consider it a useful little playground for teaching C/C++ or for jams / prototypes?
* Any obvious changes you’d make to the API or build flow to make it nicer for C++ developers?
* If you were writing a small C++ library or demo for a 4 MHz ARM with 1 MB RAM, what would you build first?

Happy to answer questions or share more details about the toolchain and runtime if anyone’s interested.

https://redd.it/1pgjqdl
@r_cpp
Post #24437 21
The worst programming language of all time

I didn't see it posted here yet. A 2 hour rant about C++

https://youtu.be/7fGB-hjc2Gc

"biggest takeaway from video is that somehow every single C++ feature has its own 400 page book dedicated exclusively to it"

It's hard to disagree with that comment.


https://redd.it/1pfx7zz
@r_cpp
YouTube The worst programming language of all time A little video about C++. 0:00 Introduction 1:39 Casting in C++. 2:47 Keywords 5:31 Types 7:02 Different Ways to Do the Same Thing 7:20 const 8:20 Formatting and Style 9:40 Naming Conventions 14:16 Header Files 20:28 Namespaces 24:50 Compile Times 26:51…
Post #24436 19
Unable to job switch

Is anybody facing the same issue as me, not getting shortlisted anywhere. I am not sure what to do. I see my friends switching companies getting paid higher, they are coming from .net, python background. I personally feel that C++ jobs are getting reduced.

Although I am quite good at work still not able to find a better place for me that values my skills.

I am C++ dev having decent knowledge of Qt/QML.
Please share your thoughts.

https://redd.it/1pfw4hl
@r_cpp
Reddit Unable to job switch : r/cpp 27 votes, 37 comments. 349K subscribers in the cpp community. Discussions, articles and news about the C++ programming language or programming in C++.
Post #24434 19
Where is std::optional<T&&>???

10 years ago we've got std::optional<T>. Nice. But no std::optional<T&>... Finally, we are getting std::optional<T&> now (see beman project implementation) but NO std::optional<T&&>...

DO we really need another 10 years to figure out how std::optional<T&&> should work? Is it yet another super-debatable topic? This is ridiculous. You just cannot deliver features with this pace nowadays...

Why not just make std::optional<T&&> just like std::optional<T&> (keep rebind behavior, which is OBVIOUSLY is the only sane approach, why did we spent 10 years on that?) but it returns T&& while you're dereferencing it?

https://redd.it/1pfk0ox
@r_cpp
GitHub GitHub - bemanproject/optional: std::optional extensions adopted for C++26 std::optional extensions adopted for C++26. Contribute to bemanproject/optional development by creating an account on GitHub.
Post #24433 22
Anyone else struggling with super slow CI builds lately?

Our CI pipeline has gotten ridiculously slow over the past few months. What used to be 5–10 minutes is now creeping toward 30+, and it’s blocking merges and killing our turnaround time. We’ve cleaned up configs, optimized a few modules, and even bumped our runners, but the performance bump didn’t last long.

Before we start rewriting half the build system, I figured I’d ask: is anyone using something that actually speeds up CI builds in a noticeable way?

https://redd.it/1pf7jwe
@r_cpp
Reddit From the cpp community on Reddit Explore this post and more from the cpp community
Post #24429 19
Exploring an offline-first and P2P-oriented runtime design in C++20

I’ve been exploring some runtime design ideas in C++20, mostly around problems that appear in unreliable or unstable network environments.

The main concepts I’m experimenting with are:

offline-first execution (local-first state, fallback mode)
P2P communication between nodes
lightweight async HTTP handling
WebSocket-based messaging
a small middleware pipeline
a modular runtime structure instead of a large monolithic framework

I’m mostly curious about whether others in the C++ community have experimented with similar approaches (local-first systems, edge runtimes, distributed execution without strong cloud dependence).

If anyone has insights, prior work, design critiques, or papers worth reading, I would be glad to learn from them.

https://redd.it/1peppj9
@r_cpp
Reddit From the cpp community on Reddit Explore this post and more from the cpp community
Post #24428 27
Introducing asyncio - a new open-source C++23 coroutine network framework

https://github.com/Hackerl/asyncio

asyncio is a coroutine-based networking framework built on top of libuv. Developed using C++23, it supports Linux, Windows, Android, and macOS, making it compatible with four major platforms.

It is far from being just a toy — it is production-ready code. At my company, software built on top of asyncio is already running on tens of thousands of employee office PCs (Windows/macOS), and Linux servers in production environments are gradually adopting it.

Key Features of asyncio:
- Simple and elegant code: The codebase is designed to be clean and compact.
- Flexible and graceful sub-task management: Manage subtasks effectively and with finesse.
- User-friendly APIs: Borrowed design inspiration from multiple languages, making the APIs intuitive and easy to use.
- Well-designed interfaces: Ensures seamless interaction and borrowing ideas from numerous programming paradigms.
- Straightforward task cancellation: Task cancellation is easy and direct.
- Effortless integration with synchronous code: Integration with threads or thread pools is straightforward and smooth.

https://redd.it/1pep8ie
@r_cpp
GitHub GitHub - Hackerl/asyncio: C++23 coroutine network framework C++23 coroutine network framework. Contribute to Hackerl/asyncio development by creating an account on GitHub.
Post #24427 23
Post #24424 22
C++ Podcasts & Conference Talks (week 49, 2025)

Hi r/cpp! Welcome to another post in this series brought to you by Tech Talks Weekly. Below are all the C++ conference talks and podcasts published in the last 7 days.

1. **"How To Build Robust C++ Inter-Process Queues - Jody Hagins - CppCon 2025"** ⸱ +6k views ⸱ 26 Nov 2025 ⸱ 01h 03m 05s
2. **"Cutting C++ Exception Time by +90%? - Khalil Estell - CppCon 2025"** ⸱ +6k views ⸱ 28 Nov 2025 ⸱ 01h 05m 10s
3. **"Back to Basics: Master C++ Friendship - Mateusz Pusz - CppCon 2025"** ⸱ +2k views ⸱ 27 Nov 2025 ⸱ 00h 56m 53s
4. **"Optimize Automatic Differentiation Performance in C++ - Steve Bronder - CppCon 2025"** ⸱ +1k views ⸱ 01 Dec 2025 ⸱ 00h 59m 59s
5. **"Is Your C++ Code Leaking Memory? Discover the Power of Ownership-Aware Profiling"** ⸱ +1k views ⸱ 02 Dec 2025 ⸱ 00h 52m 02s tldw: -
6. **"Binary Parsing - C++23 Style! - Hari Prasad Manoharan - Meeting C++ 2025"** ⸱ +700 views ⸱ 26 Nov 2025 ⸱ 00h 46m 27s
7. **"PetriNet Studio - Architecting a SaaS Simulator in Modern C++ - Gabriel Valenzuela - Meeting C++2025"** ⸱ +300 views ⸱ 28 Nov 2025 ⸱ 00h 33m 11s

This post is an excerpt from the latest issue of ***Tech Talks Weekly*** which is a free weekly email with all the recently published Software Engineering podcasts and conference talks. Currently subscribed by +7,400 Software Engineers who stopped scrolling through messy YT subscriptions/RSS feeds and reduced FOMO. Consider subscribing if this sounds useful: *https://www.techtalksweekly.io/*

Let me know what you think. Thank you!

https://redd.it/1pdtuc7
@r_cpp
www.techtalksweekly.io Tech Talks Weekly | Substack Join 9,200+ Software Engineers & Engineering Leaders who receive a free weekly email with all the recently published podcasts and conference talks. Stop scrolling through messy YouTube subscriptions. Stop FOMO. Easy to unsubscribe. No spam, ever. Click to…
Post #24423 22
A distributed mkcert-like tool written in C++

Make your development environment fully TLS-enabled — regardless of whether you access it from localhost, remote SSH, or WSL, and whether you use a browser or curl. Everything should run over HTTPS without any security warnings.

Project URL: https://github.com/coderealm-atlas/cert-ctrl

Compiles on Linux, Windows, macOS, and FreeBSD. Any feedback is welcome.

https://redd.it/1pdkvh9
@r_cpp
GitHub GitHub - coderealm-atlas/cert-ctrl: a managed certificate issue system's client. a managed certificate issue system's client. Contribute to coderealm-atlas/cert-ctrl development by creating an account on GitHub.
Older posts →
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →