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

New C++ Conference Videos Released This Month - June 2025 (Updated To Include Videos Released 2025-06-23 - 2025-06-29)

C++Online

2025-06-23 - 2025-06-29

Clean C++ Code! Horrible Performance? - Sandor DARGO - [https://youtu.be/dBO08Ru-0EM](https://youtu.be/dBO08Ru-0EM)
How to Remove Negative Numbers From C++ Containers - Frances Buontempo - https://youtu.be/qFiBG\_x7gAo
Declarative C++ - Ankur Satle - [https://youtu.be/szaTxzYVCBQ](https://youtu.be/szaTxzYVCBQ)

2025-06-16 - 2025-06-22

Data Oriented Design: Machine Learning One Million Times Faster - Andrew Drakeford - C++Online 2025 - https://youtu.be/MknFD9ar1-4
External Polymorphism and C++ Type Erasure - A Very Useful Dance of Design Patterns - Eduardo Madrid - C++Online 2025 - [https://youtu.be/HGhAc5YZUps](https://youtu.be/HGhAc5YZUps)
MISRA C++2023 for All C++ Developers - Loïc Joly - C++Online 2025 - https://youtu.be/MZVPMGWuVys

2025-06-09 - 2025-06-15

What Can C++ Learn About Thread Safety From Other Languages? - Dave Rowland - [https://youtu.be/SWmpd18QAao](https://youtu.be/SWmpd18QAao)
How to Parse C++ - Yuri Minaev - https://youtu.be/JOuXeZUVTQs
Debugging C++ Coroutines - André Brand - [https://youtu.be/2NmpP--g\_SQ](https://youtu.be/2NmpP--g_SQ)

2025-06-02 - 2025-06-08

Keynote: Six Impossible Things in Software Development - Kevlin Henney - C++Online 2025 - https://youtu.be/KtN8PIYfypg
JSON in C++ - Designing a Type for Working With JSON Values - Pavel Novikov - C++Online 2025 - [https://youtu.be/uKkY-4hBFUU](https://youtu.be/uKkY-4hBFUU)

ADC

2025-06-23 - 2025-06-29

Workshop: Klang - Live and Expressive C++ for Audio - Chris Nash - https://youtu.be/95NOqk2VW-4
Keynote: Music Informatics for Musics of India - Topics, Tools and Trends - Ajay Srinivasamurthy - [https://youtu.be/rWyBmb8pPsM](https://youtu.be/rWyBmb8pPsM)
Squeeze C++ JUCE and Bottle It Into Linux Embedded Devices and More - Stefano Zambon - https://youtu.be/0EWnkSPCyIM

2025-06-16 - 2025-06-22

Building Audio Applications using AI Models: Practical Lessons Learned - ChangHun Sung - [https://youtu.be/OAlHWRQhewE](https://youtu.be/OAlHWRQhewE)
Profiling Neural Audio Plugins - Dharanipathi Rathna Kumar - https://youtu.be/D0vmBwC2HyE
Inheriting Mantis (Synth) from Chris Huggett - Ben Supper - [https://youtu.be/N8YvYTSpUCk](https://youtu.be/N8YvYTSpUCk)

2025-06-09 - 2025-06-15

Inter-Plugin Communication (IPC) - Breaking out of the Channel Strip - Peter Sciri - https://youtu.be/X-8qj6bhWBM
Groove Transfer VST for Latin American Rhythms - Anmol Mishra & Satyajeet Prabhu - [https://youtu.be/qlYFX0FnDqg](https://youtu.be/qlYFX0FnDqg)
How to Price an Audio Plugin - Factors to Consider When Deriving That One Elusive Value - James Russell - https://youtu.be/AEZcVAz3Qvk

2025-06-02 - 2025-06-08

Practical Steps to Get Started with Audio Machine Learning - Martin Swanholm - ADC 2024 - [https://youtu.be/mMM5Fufz6Sw](https://youtu.be/mMM5Fufz6Sw)
MIDI FX - Node based MIDI Effects Processor - Daniel Fernandes - ADCx India 2025 - https://youtu.be/jQIquVLGTOA
Accelerated Audio Computing - Unlocking the Future of Real-Time Sound Processing - Alexander Talashov - ADC 2024 - [https://youtu.be/DTyx\_HsPV10](https://youtu.be/DTyx_HsPV10)

2025-05-26 - 2025-06-01

Workshop: Inclusive Design within Audio Products - What, Why, How? - Accessibility Panel: Jay Pocknell, Tim Yates, Elizabeth J Birch, Andre Louis, Adi Dickens, Haim Kairy & Tim Burgess - https://youtu.be/ZkZ5lu3yEZk
Quality Audio for Low Cost Embedded Products - An Exploration Using Audio Codec ICs - Shree Kumar & Atharva Upadhye - [https://youtu.be/iMkZuySJ7OQ](https://youtu.be/iMkZuySJ7OQ)
The Curious

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

C++ - Reddit

We just added bounties on Windows and macOS issues
https://github.com/f3d-app/f3d/issues?q=is%3Aissue%20state%3Aopen%20label%3Abounty

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

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

C++ - Reddit

Reflecting JSON into C++ Objects
https://brevzin.github.io/c++/2025/06/26/json-reflection/

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

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

C++ - Reddit

with my manager as I know It is not a good Idea and I am kind of refraining to do it. I am not sure if vacation time of 2 weeks will be enough for me to feel better but I want to give it a shot and just give my mind some space and time. People at my Job are dependent on each other so I am not sure how to ask for it or even if it will get approved or not.

I don't know if I should prioritize my mental health and should get myself recovered first not sure how long will that take and then find another job. Not sure how will my employer will take it if I confront him and if he took it personal I know it is going to make things more hard for me. Even If I ask for my desk space back and could not deliever the same productivity it will impact my performance and he will take it as an excuse and not a genuine reason. I don't know what to do, If someone can help me and can guide me will mean a lot.

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

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

C++ - Reddit

Once more about dynamic_cast, a real use case
https://www.sandordargo.com/blog/2025/06/25/once-more-about-dynamic-casts

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

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

C++ - Reddit

C++ development: How do you start a new project.

Hello everyone.

I'm curious about how you approach starting a new C++ project from scratch. There's so much that goes into those first few steps — and I’d love to hear your process!

Specifically, I’m wondering:

What’s your starting point? (Sketching, prototyping, or diving into code?)

Do you follow a specific architecture ?

What design patterns you commonly rely on?

How much time do you spend on design before coding?

Which C++ standard do you target (C++11/1417/20/23)?

Do you set up a build system right away? (Eg CMake)

Any tools, frameworks, or best practices you never skip?


Whether you’re building for embedded, games, systems, or applications — I’d love to learn how you kick things off. Share your thoughts and let’s start a great discussion!

Thank you 😀

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

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

C++ - Reddit

UI library in the wsl2

Hi I am working on a desktop app from the wsl2 ,I am looking for a library that allows me to make a UI ,preferably using only c++ (no drag and drop ...) Thanks in advance for your help



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

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

C++ - Reddit

How I Created an Interactive 3D Carousel Slider with Team Profiles Using HTML, CSS & JavaScript
https://frontbackgeek.com/how-i-created-an-interactive-3d-carousel-slider-with-team-profiles-using-html-css-javascript/

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

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

C++ - Reddit

Why return type conversions do not use move constructors?

Hello,

Does anyone know rationale why compilers do not prefer move constructors when converting types in return statements?

std::optional<std::string> function() {
std::string value = ...;
return value;
}

In the above code the compiler uses std::optional::optional(T const&) constructor, while it might be beneficial to use std::optional::optional(T &&)as shown in the next example:

std::optional<std::string> function() {
std::string value = ...;
return std::move(value);
}

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

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

C++ - Reddit

Why haven't modules been a higher priority for EDG?

On EDG's list of C++20 features, only 1 out of 11 modules papers have been implemented so far. Visual Studio uses EDG's front-end compiler for their intellisense, so using modules with MSVC means having red squiggles everywhere and extremely slow performance, to the point where they are practically unusable. Given that it's been five years since modules were voted in, that the actual MSVC compiler has decent support for them, and that Microsoft's STL now has standard library modules, why hasn't EDG caught up yet?

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

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

C++ - Reddit

How Electronic Arts Standardized their C++ Builds Across Windows and Linux using Visual Studio Build Tools
https://developer.microsoft.com/en-us/games/articles/2025/06/case-study-electronic-arts-visual-studio-build-tools/

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

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

C++ - Reddit

From 300s to 60s: C++ build boost by disabling SysMain

I had an interesting experience optimizing C++ build performance on Windows 11.

I'm using a fairly powerful PC for development. Initially, building a large project with about 1,500 .cpp files took around 90 seconds.

Six months later, on the same hardware, the build time increased to 300 seconds. I started investigating the reason.

Turns out the culprit was Windows’ performance optimization service — SysMain.
When it's running, about 60 GB of my 64 GB RAM gets used up. The system aggressively caches everything — whether it's useful or not.

After disabling SysMain, my average memory usage dropped to 16 GB out of 64,
and the build time improved dramatically — down to 60 seconds, 5× faster.

SysMain may have noble goals, but in my particular case, it was doing more harm than good.

Hope this info helps other developers out there.

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

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

C++ - Reddit

C++ in JupyterLite (WebAssembly) — Interpreting C++ in the Web
https://blog.jupyter.org/c-in-jupyter-interpreting-c-in-the-web-c9d93542f20b

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

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

C++ - Reddit

Simple Generation for Reflection with splice and non const std::meta::info

I love the new Reflection feature forwarded for C++26.
After reading the main paper, and some future proposals for code injection, it occured to me that the reflection proposal can be extended to allow code injection in a very simple way. With no new conceptual leaps, just use the splice operator already introduced (with only a minor tweak to the current design).

I wonder if this approach was explored or discussed before? I hope to start a discussion.

If this seems favourable, I hope the needed change to the C++ 26 design can still be applied (spoiler: just add const everywhere, it seems harmless, I think).

How it works?

We define 4 new rules, and 2 minor changes to the existing reflection facilities, and we achieve code injection via splicing:

1(Change). The reflection operator ^^ always returns const reflection objects (const std::meta::info and the likes of it).

2(Change). The splice operator [: :] applied to const reflection objects behaves the same as today.

3(New). We can create non-const versions of reflection objects (for example via copying const ones) and edit their properties. Those are "non-detached" to any real entity yet; the get_source_location function on them is not defined (or always throws an exception).

4(New). When the splice operator takes non-const reflection obejct, it behaves as an injection operator. Therefore in any context in which splicing is allowed, so would injection. More precisely it is performed in two steps: dependent parsing (based on the operand), followed by injecting.

5(New). The content of the reflection operator is an "unevaluated" context (similar to decltype or sizeof).

6(New). Splicing in unevaluated context performs only parsing, but not injecting it anywhere.

Motivating Example

Generating a non const pointer getter from const getter (the comments with numbers are explained below):

    consteval std::meta_info create_non_const_version(const std::meta_info original_fn_refl); //1

//usage
struct A
{
int p;
const int* get_p() const { return &p;}

/*generate the non const version
int * get_const() {return const_cast<const int *>(const_cast<const A*>(this)->get_p()); }
*/
consteval {
const std::meta::info const_foo = ^^get_p;
std::meta_info new_foo = create_non_const_version(const_foo); // a new reflection object not detached to any source_location

/*injection happens here*/
[:new_foo :]; //2
}

/* this entire block is equivalent to the single expression: */

[:create_const_version(^^get_p):]
};

//implementation of the function
consteval std::meta_info create_non_const_version(const std::meta_info original_fn_refl)
{
std::meta::info build_const_getter = original_fn_refl; //3

// we know it is a member function as the original reflection was, so the following is legal:
build_const_getter.set_const(false); //4

//find the return type and convert const T* into T* (this is just regular metaprogramming, we omit it here)
using base_reult_t = pmr_result_t<&[:original_fn_refl:]>;
using new_result_type = std::remove_const_t<std::remove_pointer_t<base_reult_t>>*;

build_const_getter.set_return_type(^^new_result_type);

return ^^([: build_const_getter:] {
return const_cast<class_name*>(this).[:const_foo:]();
}); //5
}


How does the example work from these rules? Each of the numbered comments is explained here:

//1 This function returns a non-const reflection object, the result is a reflection of an inline member function definition. Because it is non-const, the reflected entity does not exist yet. We say the reflection object is "detached".

//2 The splice here takes a non-const reflection object. Therefore it is interpreted as an injection operator. It knows to generate an inline member function

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

C++ - Reddit

New C++ Conference Videos Released This Month - June 2025 (Updated To Include Videos Released 2025-06-16 - 2025-06-22)

**C++Online**

2025-06-16 - 2025-06-22

* Data Oriented Design: Machine Learning One Million Times Faster - Andrew Drakeford - C++Online 2025 - [https://youtu.be/MknFD9ar1-4](https://youtu.be/MknFD9ar1-4)
* External Polymorphism and C++ Type Erasure - A Very Useful Dance of Design Patterns - Eduardo Madrid - C++Online 2025 - [https://youtu.be/HGhAc5YZUps](https://youtu.be/HGhAc5YZUps)
* MISRA C++2023 for All C++ Developers - Loïc Joly - C++Online 2025 - [https://youtu.be/MZVPMGWuVys](https://youtu.be/MZVPMGWuVys)

2025-06-09 - 2025-06-15

* What Can C++ Learn About Thread Safety From Other Languages? - Dave Rowland **-** [https://youtu.be/SWmpd18QAao](https://youtu.be/SWmpd18QAao)
* How to Parse C++ - Yuri Minaev - [https://youtu.be/JOuXeZUVTQs](https://youtu.be/JOuXeZUVTQs)
* Debugging C++ Coroutines - André Brand - [https://youtu.be/2NmpP--g\_SQ](https://youtu.be/2NmpP--g_SQ)

2025-06-02 - 2025-06-08

* Keynote: Six Impossible Things in Software Development - Kevlin Henney - C++Online 2025 **-** [https://youtu.be/KtN8PIYfypg](https://youtu.be/KtN8PIYfypg)
* JSON in C++ - Designing a Type for Working With JSON Values - Pavel Novikov - C++Online 2025 - [https://youtu.be/uKkY-4hBFUU](https://youtu.be/uKkY-4hBFUU)

**ADC**

2025-06-16 - 2025-06-22

* Building Audio Applications using AI Models: Practical Lessons Learned - ChangHun Sung - [https://youtu.be/OAlHWRQhewE](https://youtu.be/OAlHWRQhewE)
* Profiling Neural Audio Plugins - Dharanipathi Rathna Kumar - [https://youtu.be/D0vmBwC2HyE](https://youtu.be/D0vmBwC2HyE)
* Inheriting Mantis (Synth) from Chris Huggett - Ben Supper - [https://youtu.be/N8YvYTSpUCk](https://youtu.be/N8YvYTSpUCk)

2025-06-09 - 2025-06-15

* Inter-Plugin Communication (IPC) - Breaking out of the Channel Strip - Peter Sciri - [https://youtu.be/X-8qj6bhWBM](https://youtu.be/X-8qj6bhWBM)
* Groove Transfer VST for Latin American Rhythms - Anmol Mishra & Satyajeet Prabhu - [https://youtu.be/qlYFX0FnDqg](https://youtu.be/qlYFX0FnDqg)
* How to Price an Audio Plugin - Factors to Consider When Deriving That One Elusive Value - James Russell - [https://youtu.be/AEZcVAz3Qvk](https://youtu.be/AEZcVAz3Qvk)

2025-06-02 - 2025-06-08

* Practical Steps to Get Started with Audio Machine Learning - Martin Swanholm - ADC 2024 - [https://youtu.be/mMM5Fufz6Sw](https://youtu.be/mMM5Fufz6Sw)
* MIDI FX - Node based MIDI Effects Processor - Daniel Fernandes - ADCx India 2025 - [https://youtu.be/jQIquVLGTOA](https://youtu.be/jQIquVLGTOA)
* Accelerated Audio Computing - Unlocking the Future of Real-Time Sound Processing - Alexander Talashov - ADC 2024 - [https://youtu.be/DTyx\_HsPV10](https://youtu.be/DTyx_HsPV10)

2025-05-26 - 2025-06-01

* Workshop: Inclusive Design within Audio Products - What, Why, How? - Accessibility Panel: Jay Pocknell, Tim Yates, Elizabeth J Birch, Andre Louis, Adi Dickens, Haim Kairy & Tim Burgess - [https://youtu.be/ZkZ5lu3yEZk](https://youtu.be/ZkZ5lu3yEZk)
* Quality Audio for Low Cost Embedded Products - An Exploration Using Audio Codec ICs - Shree Kumar & Atharva Upadhye - [https://youtu.be/iMkZuySJ7OQ](https://youtu.be/iMkZuySJ7OQ)
* The Curious Case of Subnormals in Audio Code - Attila Haraszti - [https://youtu.be/jZO-ERYhpSU](https://youtu.be/jZO-ERYhpSU)

**Core C++**

2025-06-02 - 2025-06-08

* Messing with Floating Point :: Ryan Baker - [https://www.youtube.com/watch?v=ITbqbzGLIgo](https://www.youtube.com/watch?v=ITbqbzGLIgo)
* Get More Out of Compiler-Explorer ('godbolt') :: Ofek Shilon - [https://www.youtube.com/watch?v=\_9sGKcvT-TA](https://www.youtube.com/watch?v=_9sGKcvT-TA)
* Speeding up Intel Gaudi deep-learning accelerators using an MLIR-based compiler :: Dafna M., Omer P - [https://www.youtube.com/watch?v=n0t4bEgk3zU](https://www.youtube.com/watch?v=n0t4bEgk3zU)
* C++ ♥ Python :: Alex Dathskovsky - [https://www.youtube.com/watch?v=4KHn3iQaMuI](https://www.youtube.com/watch?v=4KHn3iQaMuI)
* Implementing Ranges and Views :: Roi Barkan -

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

C++ - Reddit

After nine years, Ninja has merged support for the GNU Make jobserver
https://thebrokenrail.com/2025/06/30/ninja-jobserver.html

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

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

C++ - Reddit

C++ move internals simplified
https://youtube.com/shorts/tmC6lmJMUdQ?si=IOofJIrxl_dpx4Ci

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

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

C++ - Reddit

Windows and high resolution timers
https://www.siliceum.com/en/blog/post/windows-high-resolution-timers/?s=r

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

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

C++ - Reddit

Workplace Environment

sorry for it to be a long read but if somebody has faced a similar situation and can provide some good advice will mean a lot.

I am international student and I completed my Post Graduation Diploma in Embedded Systems in Dec 2023 here in Canada.I did my Bachelor's in Electrical Engineering back in India. However, I missed my co-op at my college by 0.5% and I regretted it the most.

I did applied for 300-350 job applications and took me 8-10 months.Did approached a lot of people who are in this industry and attended a number of networking events. At last I had to put a fake experience to get a Job but I mentioned the things as an experience that I knew or projects that I worked on.

Now, I have OCD and It comes with a lot of things including anxiety, guilt and mood swings, it gets worse if a person is dealing with stress doesn't matter where it is coming from. My company is really small and only have two rooms and I had a desk at my first room where I had everything set it up for myself and my manager sits in the second room Now since I did not have the past experience I worked extra hours to catch up at things, I worked even after office hours and including most weekends.

This went like for 3.5 months and I felt as if like I got burntout. I have been taking some meds for OCD and I wanted to get off of them so I started reducing the dose. Now my manager somehow decided to make me sit next to him without even asking me, like literally next to him, the office space is really small and people converse with each other all the time.

It becomes really hard to focus at work while all this is happening. I don't now even have a proper desk space, I feel like I am sitting in a sharing space between two people. Since its been more than a month I feel like not being a part of the office space, I don't even feel like I am going to office.

At first I thought I am not feeling productive as I couldn't get much done in a day, plus I always work on things on my own way i.e I take my time to understand things and then do it, I also need some personal space as well. We have stand up meetings everyday to discuss what we did yesterday and what we will do today.

Now every hour or two if lets say I am testing something he will ask for an update and will question how I am doing it/ or how it is going.Even if I am working on something else he will ask how it is going, how I am approching the thing or trying to do it, I feel like my performance is getting evaluated, I always feel under pressure and try to do multi-tasking just for the sake of portraying that I am doing good but the end of the day I feel like did nothing.

Sometimes I cannot do something becuause of my OCD and intrusive thoughts and I used to take my time earlier to go through things but now I just say something or have to just go through things without not understanding much of it just because I know I will get asked about something. I have started to make silly mistakes at Job and even sometime my manager will laugh out loud when he gets to know about it,which do impacts my self confidence.

I have learnt a lot including linux commands, bash scripting, worked on Raspberry Pi, did programmed a TPMS sensor in C and integrated with their device which is running on linux, code revewing, testing developers code creating documentation and much more.

I don't want to lose this Job as becuase I have already spent an year to get it, I have to apply for my PR as well, I have lot of hopes on it.I am not sure if it is becuase of the OCD or the work environment or the combination of both but right now I feel like I don't have any thoughts in my mind,it just feels blank. I am not sure how long this will last like this. I just open my laptop and stares at the screen and there will be nothing going across my mind, even when I read the datasheet it takes me a whole day to go through 20 pages of it.

I don't know how to approach this situation, I am seeing a psychiatrist but don't know what and how much time it will take to get things normal. I can't talk about my OCD

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

C++ - Reddit

Successful compile code, when execute the executable file no output.

Hello everyone,


I am going dive to c++ from Python, I am trying simple cpp file, when compile with g++ filename -o filename.exe it succed with no error. but when execute the filename.exe it doesn't show output anything.

I am using windows and mingw-64. here the simple code

#include <iostream>

int main()
{
    std::cout << "Hello World!" << std::endl;
    return 0;
}




what's wrong with my setup.
Thanks for your feedback!

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

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

C++ - Reddit

Recommendations for beginners

Hi all ,

I have 7 years of work experience in the wireless industry. For mid-senior levels I am seeing the gap of not having C++ on my resume and my companies I see have that in their criteria .
I am well versed with Python .
Any recommendations for beginners:

1) Good resources available to start from as a beginner ?

2) Any good platform where I can practice writing some piece of code in C++ everyday ?

3) How long does it take to reach an intermediate level in C++?


Any recommendations or advice is of great help
Thanks in advance

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

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

C++ - Reddit

What's the best strategy to maintain a C++ SDK? In terms of maintenance, support and release schedules etc.

Apart from generic SDLC, what are some of the best strategy to manage and make dev/qa lives easier. Any particular tools? I know this code be some sort of PM stuff, but I'm looking for some non-PM aspect.

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

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

C++ - Reddit

the right way to detect member field in c++20?

I've observed that different compilers yield varying results for the following naive approach to detecting the existence of a member field: https://godbolt.org/z/xYGd6Y67P

#include <iostream>

template <class T> // important: must be a class template
struct Foo {
// int field;
void Bar() {
if constexpr ( requires {this->field;}) {
std::cout << "has field " << this->field;
}
else {
std::cout << "no field";
}
}
};

int main() {
Foo<int>().Bar();
}


GCC 15: Compile error: `error: 'struct Foo<T>' has no member named 'field' [-Wtemplate-body]`
GCC 14: Compiles successfully and outputs no field
Clang 19: Compile error: `error: no member named 'field' in 'Foo<T>'`
Clang 18: Compiles successfully and outputs no field

It appears that compilers have recently been upgraded to be more standard-compliant. I'm curious which rule prevents this naive method of detecting a member field, and what is the correct way to detect the existence of a member field for both class templates and plain classes.

BTW, it's crucial in the above code that Foo is a class template. otherwise, it would always result in a compile error.




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

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

C++ - Reddit

Rostyslav Skrypnyk: Getting Started With ranges
https://youtu.be/wpi9Cr1LvYE

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

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

C++ - Reddit

Getting Down in the Bits with Boost.Multiprecision (July 9th)

Getting Down in the Bits with Boost.Multiprecision

If your application needs more precision than the built-in integer or floating-point types, C++ provides facilities for creating your own data types that can fulfill this need. There are a variety of libraries that provide such facilities, each with their own class names and API. Boost.Multiprecision provides a unified way of interacting with multiple precision integer, rational, real (floating-point) and complex number data types.

This month, Richard Thomson will give us an introduction to using Boost.Multiprecision for floating-point types in order to perform arbitrary zooms into the well known Mandelbrot set fractal.

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

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

C++ - Reddit

Stenos: fast compression of binary data
https://github.com/Thermadiag/stenos

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

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

C++ - Reddit

The talklisting for Meeting C++ 2025
https://meetingcpp.com/mcpp/schedule/talklisting.php

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

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

C++ - Reddit

definition (because this is encoded in the operand). The context in which it is called is inside A, therefore there would be no syntax error here.

//3 We take the reflection of the original function, and copy it to a new reflection, now "detached" because it is non const. Therefore it has all the same properties as original_fn_refl, except it is now detached.

//4 We edit the properties of the reflection object via standard library API that is available only to non-const versions of std::meta::info (that is, these are non-const member functions).

//5 Lets unpack the return statement:

5a. We return ^^(...) which is a reflection of something, okay.

5b. The content of it is

    [: build_const_getter:] {
return const_cast<class_name*>(this).[:const_foo:]();
}


First, there is a splice on non-const reflection object, therefore it is interpreted as an injection operator.

5c. The properties of the reflection object tell the compiler it should generates a member function, the parse context.

5d. The entire expression including the second {} is parsed in this context.

5e. The compiler determines this entire expression becomes an inline member function definition with the given body.

5f. But we are not in a context in which we define a member function, so surely this must be a syntax error?
No! Remember we are inside a ^^(...) block, and from the fifth rule, we say it is "unevaluated", the same way we can have illegal code inside decltype. This is just SFINAE! Therefore the compiler does not actually inject the member function here.

5g. The result of ^^(...) would be a const reflection of the member function definition (which was not injected, only parsed to create a reflection).

5h. We now return by value, therefore we create a new reflection object (still detached), whose contents describe the inline function definition with the new content (which never existed).


Why this is a good idea

There are a number of advantages of this approach:

1. It is simple, if you already understand reflection and splicing.

2. The context of injection is the same as that of splicing, which is everywhere we need.

3. The API of manipulating reflection objects just follow from the usual rules of const/non-const member functions!

4. It is structual.


The changes needed for C++26 Reflection

Just make everything const! That is it!

Note this is of paramount important that this tweak is done in time for C++26, because changing non-const to const in the library would be a major breaking change.
I think that even if this approach won't work, adding const now (at least for the library) seems harmless, and also conecptually correct; as all the functions are get or is.

What do you think?




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

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

C++ - Reddit

[https://www.youtube.com/watch?v=iZsRxLXbUrY](https://www.youtube.com/watch?v=iZsRxLXbUrY)

2025-05-26 - 2025-06-01

* The battle over Heterogeneous Computing :: Oren Benita Ben Simhon **-** [https://www.youtube.com/watch?v=RxVgawKx4Vc](https://www.youtube.com/watch?v=RxVgawKx4Vc)
* A modern C++ approach to JSON Sax Parsing :: Uriel Guy - [https://www.youtube.com/watch?v=lkpacGt5Tso](https://www.youtube.com/watch?v=lkpacGt5Tso)

**Using std::cpp**

2025-06-16 - 2025-06-22

* Closing Keynote: C++ as a 21st century language - Bjarne Stroustrup - [https://www.youtube.com/watch?v=1jLJG8pTEBg](https://www.youtube.com/watch?v=1jLJG8pTEBg)
* Known pitfalls in C++26 Contracts - Ran Regev - [https://www.youtube.com/watch?v=tzXu5KZGMJk](https://www.youtube.com/watch?v=tzXu5KZGMJk)

2025-06-09 - 2025-06-15

* Push is faster - Joaquín M López Muñoz - [https://www.youtube.com/watch?v=Ghmbsh2Mc-o&amp;pp=0gcJCd4JAYcqIYzv](https://www.youtube.com/watch?v=Ghmbsh2Mc-o&amp;pp=0gcJCd4JAYcqIYzv)
* Cancellations in Asio: a tale of coroutines and timeouts - Rubén Pérez Hidalgo - [https://www.youtube.com/watch?v=80Zs0WbXAMY](https://www.youtube.com/watch?v=80Zs0WbXAMY)

2025-06-02 - 2025-06-08

* C++ packages vulnerabilities and tools - Luis Caro - [https://www.youtube.com/watch?v=sTqbfdiOSUY](https://www.youtube.com/watch?v=sTqbfdiOSUY)
* An introduction to the Common Package Specification (CPS) for C and C++ - Diego Rodríguez-Losada - [https://www.youtube.com/watch?v=C1OCKEl7x\_w](https://www.youtube.com/watch?v=C1OCKEl7x_w)

2025-05-26 - 2025-06-01

* CMake: C'mon, it's 2025 already! - Raúl Huertas - [https://www.youtube.com/watch?v=pUtB5RHFsW4](https://www.youtube.com/watch?v=pUtB5RHFsW4)
* Keynote: C++: The Balancing Act of Power, Compatibility, and Safety - Juan Alday - [https://www.youtube.com/watch?v=jIE9UxA\_wiA](https://www.youtube.com/watch?v=jIE9UxA_wiA)

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

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

C++ - Reddit

How good is w3schools for learning C++

Title says all. If there are any other free courses available on youtube worth checking out then do share :P

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

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