r_cpp | Unsorted

Telegram-канал r_cpp - C++ - Reddit

-

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

Subscribe to a channel

C++ - Reddit

How important is Inheritance, actually?

I'm making an OpenGL program and want to generalize different models and objects (i.e. icosphere, 3D Perlin Mesh) into one Mesh class. Is it important that I use inheritance or is it okay if each of these objects create their own instance of the Mesh class. As someone that never really used c++ before, how important is inheritance in OOP or is it just optional since it seems like a hassle to implement.

https://redd.it/1ltx6l2
@r_cpp

Читать полностью…

C++ - Reddit

Evaluating the Effectiveness of Memory Safety Sanitizers
https://doi.ieeecomputersociety.org/10.1109/SP61157.2025.00088

https://redd.it/1ltlea6
@r_cpp

Читать полностью…

C++ - Reddit

Maps on chains
https://bannalia.blogspot.com/2025/07/maps-on-chains.html

https://redd.it/1lt888n
@r_cpp

Читать полностью…

C++ - Reddit

How much math I need

Hi, I know C and C++, and I want to build my own VST (Virtual Studio Technology) software. But first, I need to learn JUCE. I know this will require some math. I have a basic understanding of math, like precalculus, but I don't have a strong grasp of calculus. Should I learn JUCE first, or should I focus on improving my math skills first?.

https://redd.it/1lsyqps
@r_cpp

Читать полностью…

C++ - Reddit

Arduplane Vectoring System and possible implementation
https://acrobat.adobe.com/id/urn:aaid:sc:US:457f1410-65fc-44e7-815a-f9583e2230d5

https://redd.it/1lsw24g
@r_cpp

Читать полностью…

C++ - Reddit

C++26 Feature Freeze (Herb Sutter Bulgaria Trip Report 2025-06-21)
https://herbsutter.com/2025/06/21/trip-report-june-2025-iso-c-standards-meeting-sofia-bulgaria/

https://redd.it/1lscjts
@r_cpp

Читать полностью…

C++ - Reddit

ChatGPT Simulating The Solar System In 3D With C++

I've just been playing around with ChatGPT and wanted to share.






#include <glad/glad.h>
#include <GLFW/glfw3.h>
#include <glm/glm.hpp>
#include <glm/gtc/matrix_transform.hpp>
#include <iostream>
#include <vector>
#include <cmath>

const unsigned int SCR_WIDTH = 800;
const unsigned int SCR_HEIGHT = 600;

void framebuffer_size_callback(GLFWwindow* window, int width, int height);
void processInput(GLFWwindow *window);

// Orbital params
struct Planet {
float distance; // from sun
float size;
float speed; // angular speed
glm::vec3 color;
};

// Planets
std::vector<Planet> planets = {
{ 0.4f, 0.05f, 4.7f, glm::vec3(0.5f, 0.5f, 0.5f) }, // Mercury
{ 0.7f, 0.08f, 3.5f, glm::vec3(0.8f, 0.6f, 0.2f) }, // Venus
{ 1.0f, 0.09f, 2.9f, glm::vec3(0.2f, 0.5f, 1.0f) }, // Earth
{ 1.5f, 0.06f, 2.4f, glm::vec3(1.0f, 0.2f, 0.2f) }, // Mars
{ 2.5f, 0.15f, 1.3f, glm::vec3(1.0f, 0.8f, 0.2f) }, // Jupiter (scaled down)
};

int main() {
glfwInit();
glfwWindowHint(GLFW_CONTEXT_VERSION_MAJOR, 3);
glfwWindowHint(GLFW_CONTEXT_VERSION_MINOR, 3);
glfwWindowHint(GLFW_OPENGL_PROFILE, GLFW_OPENGL_CORE_PROFILE);

GLFWwindow* window = glfwCreateWindow(SCR_WIDTH, SCR_HEIGHT, "Solar System 3D", NULL, NULL);
if (!window) {
std::cerr << "Failed to create window.\n";
glfwTerminate();
return -1;
}
glfwMakeContextCurrent(window);
glfwSetFramebufferSizeCallback(window, framebuffer_size_callback);

if (!gladLoadGLLoader((GLADloadproc)glfwGetProcAddress)) {
std::cerr << "Failed to initialize GLAD\n";
return -1;
}

glEnable(GL_DEPTH_TEST);

// Simplified rendering loop
float time = 0.0f;

while (!glfwWindowShouldClose(window)) {
processInput(window);
time += 0.01f;

glClearColor(0.0f, 0.0f, 0.05f, 1.0f);
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);

// Projection and view
glm::mat4 projection = glm::perspective(glm::radians(45.0f),
(float)SCR_WIDTH / SCR_HEIGHT, 0.1f, 100.0f);
glm::mat4 view = glm::lookAt(glm::vec3(0, 5, 10),
glm::vec3(0, 0, 0),
glm::vec3(0, 1, 0));

// Draw Sun
// Draw planet positions
for (auto& planet : planets) {
float angle = time * planet.speed;
float x = cos(angle) * planet.distance;
float z = sin(angle) * planet.distance;

// Replace this with your drawSphere(x, 0, z, planet.size)
}

glfwSwapBuffers(window);
glfwPollEvents();
}

glfwTerminate();
return 0;
}

// Resize window
void framebuffer_size_callback(GLFWwindow* window, int width, int height) {
glViewport(0, 0, width, height);
}

// Close on Esc
void processInput(GLFWwindow *window) {
if (glfwGetKey(window, GLFW_KEY_ESCAPE) == GLFW_PRESS)
glfwSetWindowShouldClose(window, true);
}

https://redd.it/1lrxxeg
@r_cpp

Читать полностью…

C++ - Reddit

for range vs index based for loop

2 codes with the same everything but different for loop style

the range-based loop took more time than index for loop

is it always true that index for loop is faster than range loop ?

which one do you recommend to use ?

because it is not allowed here to put a video ,I recorded a vedio it's almost one minute showing the difference in time , it is on my post profile (the most recent post) .

link of the post

https://redd.it/1lrydbu
@r_cpp

Читать полностью…

C++ - Reddit

Wasmbind

Hello all

I’m working on a project called wasmbind, which consists of 2 libraries, jsbind and webbind.
The goal of the project is to provide a C++ interface to the browser’s DOM when targeting wasm.
Currently jsbind provides just the minimal interfaces required by webbind. The webbind headers and sources are generated from webidl files.

This allows for a more idiomatic, and less stringly-typed, api than for example emscripten’s val api.

It’s also backend-agnostic, and can be used with stock clang targeting the wasm32-unknown-unknown (freestanding) target, so you don’t need to install additional special versions of clang. It can also be used to target wasm32-wasi and emscripten.

In essence it’s similar to the widely-used web-sys crate in the Rust ecosystem:

https://crates.io/crates/web-sys

Link to the wasmbind repo:

https://github.com/MoAlyousef/wasmbind





https://redd.it/1lrr8zl
@r_cpp

Читать полностью…

C++ - Reddit

C# to C++

I’ve been a full stack engineer in the web applications industry, all the way from simple web apps to big data projects, mostly done using C# and web programming languages.

Apart from doing embedded and HFT, what is the most popular industry that heavy uses c++?

https://redd.it/1lrp6ss
@r_cpp

Читать полностью…

C++ - Reddit

How long to master c++ from Python or other languages

Hello everyone.

I am in transition to going dive into C++, how long it normally takes to master it specially from other languages. also, how to get jobs in C++ developer to improve the skillset.

https://redd.it/1lrkwwh
@r_cpp

Читать полностью…

C++ - Reddit

I wrote a tool to stop make -j from OOM-killing my C++ builds

Hey everyone,

Like many of you, I often work on large C++ codebases where running make -j with full parallelism is essential to keep build times manageable.

I have a build VM with 32 cores but only 16GB of RAM. When I'd kick off a build, it was a lottery whether it would finish or if the system would spawn too many g++/clang++ processes at once, exhaust all the memory, and have the OOM killer nuke a random compiler job, failing the entire build.

The usual workaround is to manually lower the job count (make -j8), but that feels like leaving performance on the table.

So, I wrote a simple C-based tool to solve this. It's called Memstop, a tiny LD_PRELOAD library. It works as a gatekeeper for your build:

1. Before make launches a new compiler process, Memstop intercepts the call.
2. It checks the system's available memory in /proc/meminfo.
3. If the available memory is below a configurable threshold (default 10%), it simply waits until another job finishes and memory is freed.

This throttles the build based on actual memory pressure, not just a fixed job count. The result is that you can run make -j$(nproc) with confidence. The build might pause for a moment if memory gets tight, but it won't crash.

Using it is straightforward:

# Require 20% available memory before spawning a new compiler process
export MEMSTOPPERCENT=20
LD
PRELOAD=/path/to/memstop.so make -j

I'm sharing it here because I figured other C++ devs who wrestle with large, parallel builds might find it useful. It's a single C file with a Makefile and no complex dependencies.

The code is on GitHub (GPLv3). I would love to hear your thoughts\!

Link: https://github.com/surban/memstop

https://redd.it/1lrg764
@r_cpp

Читать полностью…

C++ - Reddit

Florent Castelli: A note about safety - (Fixed version)
https://youtu.be/VAnlVjrDouA

https://redd.it/1lrczxn
@r_cpp

Читать полностью…

C++ - Reddit

Martin Fowler vs Uncle Bob – What's the Right Function Length?
https://youtu.be/hPPFri2zRfw?si=PugMR9aB9LHot2UD

https://redd.it/1lr2e8r
@r_cpp

Читать полностью…

C++ - Reddit

Library Hardware performance monitoring directly in your C++ code

Hey r/cpp! I'm back with an update on my library that I posted about a year ago. Since then, perf-cpp has grown quite a bit with new features and users, so I thought it's time to share the progress.


What is perf-cpp? It's a C++ library that wraps builds on the perf subsystem, letting you monitor hardware performance counters and record samples directly from your application code. Think perf stat and perf record, but embedded in your program with a clean C++ interface.

Why would you want this? Tools like perf, VTune, and uProf are great for profiling entire programs, but sometimes you need surgical precision. Maybe you want to:

- Profile just a specific algorithm or hot loop
- Compare performance metrics between different code paths
- Build adaptive systems that tune themselves based on hardware events
- Link memory access samples with knowledge from the application, e.g., data structure addresses
- Generate flamegraphs for a specific code paths

The library is LGPL-3.0 licensed and requires Linux kernel 4.0+. Full docs and examples are in the repo: https://github.com/jmuehlig/perf-cpp

I'm genuinely curious what the community thinks. Is this useful? How could it be better? Fire away with questions, suggestions, or roasts of my code!

https://redd.it/1lqzaxm
@r_cpp

Читать полностью…

C++ - Reddit

New C++ Conference Videos Released This Month - July 2025

C++Online

2025-06-30 - 2025-07-06

Essential C++ Tips and Tricks for the Ultimate Cpp Performance - Andreas Fertig - [https://youtu.be/\_lwuqH72ycM](https://youtu.be/_lwuqH72ycM)
Keynote: How To Improve Software Innovation Through Diversity - Sejal Gupta - https://youtu.be/ym8mt\_LGWew
How to Write a Base Level Cpp Library for Safety Critical Software in C++ - Anthony Williams - [https://youtu.be/NWTowFQ1c0I](https://youtu.be/NWTowFQ1c0I)

ACCU Conference

2025-06-30 - 2025-07-06

The Next Coding Horizon - Proactive LLMs for Enhanced Productivity - Anastasia Kazakova - https://youtu.be/ak7Q6TEOJnQ
The C++ Execution Model - Bryce Adelstein Lelbach - [https://youtu.be/6zq5ZmCvldU](https://youtu.be/6zq5ZmCvldU)

ADC

2025-06-30 - 2025-07-06

Branch-Free Oscillators for Virtual Analog Software Synthesizer Applications in C++ - Angus Hewlett - https://youtu.be/5Les61Hh46w
Spatial Localization and Techniques for Synthesizing Real-Time Binaural Audio for Headphones - Harsha Vardhan Rapeti - [https://youtu.be/A1XHIy1GgNQ](https://youtu.be/A1XHIy1GgNQ)
Debugging Audio Content With Visuals - A Debugger Extension and Some Other Helpful Tools - Maxime Coutant - https://youtu.be/tZMA49ZnMbQ

https://redd.it/1ltxswm
@r_cpp

Читать полностью…

C++ - Reddit

Leadwerks 5 Crash Course

This video provides an overview of the entire developer experience using the new version 5 of my C++ game engine Leadwerks, compressed into just over an hour-long video. Enjoy the lesson and let me know if you have any questions about my technology or the user experience. I'll try to answer them all!
https://www.youtube.com/watch?v=x3-TDwo06vA

https://redd.it/1lt8q7r
@r_cpp

Читать полностью…

C++ - Reddit

С++ All quiet on the modules front
https://youtube.com/watch?v=WLS9zOKzSqA&amp;si=rZDvamZayFETc3Y1

https://redd.it/1lt84us
@r_cpp

Читать полностью…

C++ - Reddit

contracts and sofia

Hey,

Can anyone share the last info about it? All i know is that bjarne was really displeased with it from some conference talk about all the 'pitfalls' (the biggest foot guns we've gotten in a long time!), but I havent seen any more recent news since.

https://redd.it/1lsy7sc
@r_cpp

Читать полностью…

C++ - Reddit

Advice For Game Dev

Hi everyone❤️ I'm new to CPP but that's not my first time coding, I was coding in C for a month and I was watching( bro code) playlist no doubt you know him guys😅 so when I finished that playlist I asked myself should I dive more in C or switch to CPP 🤨 cuz my main goal is to be a game dev in CPP, and C will not help me at all in that way, cuz I'll use unreal engine for my games and that engine is using CPP😐 but before I ever started coding I asked Chat GPT for an advice and what should I do and he told me that I should start with C to know more about coding and something like that🫠🫠 so now I wanna start learning CPP and I want some Advice but from real trusted devs not Chat GPT 😂

https://redd.it/1lsd6kp
@r_cpp

Читать полностью…

C++ - Reddit

HTTP(s) and WS(s) library using Asio

Hi all. I would like to share my HTTP and websocket c++ library https
It's based on Asio and is intended as an alternative to Beast. It provides HTTP and WS primitives as composed operations. I'm looking for some early feedback. Thanks

https://redd.it/1ls4c0d
@r_cpp

Читать полностью…

C++ - Reddit

Code Coverage Gutters in VSCode?

I’m returning to working with C++ after a several year hiatus. In that time, I’ve learned to appreciate some nice tooling ecosystems from languages like Go, which have easy support for displaying coverage gutters to illustrate which lines have been executed from tests.

My question is: what would be the easiest equivalent these days for C++, specially for llvm-based builds using cmake? I’ve found a few outdated threads/topics, but I’m unsure if there is anything more recent.

Best I can come up with is:

1. Use a cmake variant for generating coverage content
2. Configure a coverage gutters plugin to read the *.info file that will be generated in a consistent place under a “build” directory
3. Have a VSCode task that I can manually trigger to run the tests (through ctest) and then generate the coverage report with llvm-cov

Am I on the right track? Is there anything easier/less manual? Does anyone have any tips/configuration options that they may be willing to share?


https://redd.it/1lrz11b
@r_cpp

Читать полностью…

C++ - Reddit

Fall, rage, try again. I made Way of the Dragons, a climbing game where baby dragons fight to get home. Way of the Dragons🐉 live on Steam.
https://youtu.be/fe6zSAVURLo

https://redd.it/1lrrp4b
@r_cpp

Читать полностью…

C++ - Reddit

First cpp/opengl project

it shows all 9 planets orbiting in real time with gravity, and there's a wobbly grid that bends around the planets like space-time.
you can click planets, edit their mass, position, velocity etc and see what happens.

no game engine, just raw opengl + imgui + glm.
learned a lot building it so figured i'd share :)
(i know the UI is kinda broken and there are bugs, but it was fun for a first project)

here's the github if anyone wants to check it out: https://github.com/lucas-santoro/SolarSystemGL

https://redd.it/1lrpplq
@r_cpp

Читать полностью…

C++ - Reddit

studyplan.dev has been completely redesigned

I noticed that the creator of https://www.studyplan.dev/ completely redesigned the website. It used to have a bunch of random AI generated pictures on every page, now the website looks really neat.

https://redd.it/1lrmc10
@r_cpp

Читать полностью…

C++ - Reddit

cpp.libhunt.net and articles

How to pass moderation of an article on cpp.libhunt.net? Have you published your development articles there?

https://redd.it/1lrhyd1
@r_cpp

Читать полностью…

C++ - Reddit

CppCast: BrontoSource and Swiss Tables
https://cppcast.com/brontosource_and_swiss_tables/

https://redd.it/1lrdg2f
@r_cpp

Читать полностью…

C++ - Reddit

Desktop app development in cpp

Hello, I have experienced deskrop app development using qt in 2017 and right now im lost.

since 2018 ive been changing my path into android java and nodejs development. but right now i want to start over develop desktop (mainly windows) apps using cpp or rust and i want to learn again.

i just dont kbow at all which path should i choose, i dont even follow cpp versions.

please advice me on how can i develop windows apps

thank you

https://redd.it/1lra8ab
@r_cpp

Читать полностью…

C++ - Reddit

Flortent Castelli: A note about safety
https://youtu.be/LuCfYMg5btI

https://redd.it/1lqxxzm
@r_cpp

Читать полностью…

C++ - Reddit

wait free programs parallelism clarification

in parallelism you have wait free, and lock free programs … lock free can be done easily by just using compare and exchange with spin locks …

so if each spin lock is on its own pinnned core so no thread context switching cost occurs … does that mean this program is “wait free”?

for those curious see this https://stackoverflow.com/questions/4211180/examples-illustration-of-wait-free-and-lock-free-algorithms

https://redd.it/1lqy2ks
@r_cpp

Читать полностью…
Subscribe to a channel