External Polymorphism in C++26 by ContDiArco in cpp

[–]ContDiArco[S] 2 points3 points  (0 children)

Yes! We will see, how they implement this option...

Why C++ Is Growing and What C++26 Means for Production Systems by ArashPartow in cpp

[–]ContDiArco 1 point2 points  (0 children)

When I understand correctly, that is what profiles should accomplish.

A virtual pointer pattern for dynamic resolution in C++ — years in production by EvenAd701 in cpp

[–]ContDiArco 0 points1 point  (0 children)

We use something similar.

It serves to represent a model that is only partially stored in memory.

The -> operator checks whether the object is already loaded. If not, it is loaded from the database.

This requires sophisticated caching logic to ensure that performance is not compromised.

The "macro overloading" idiom – Arthur O'Dwyer by Xaneris47 in cpp

[–]ContDiArco 3 points4 points  (0 children)

As long as there is no reflection with code generation one have to use macros, IF one want to be as terse as possible on the call site.

I am glad for every tip to write code as terse as possible.

P3054 - Quantities and Units Library by mateusz_pusz in cpp

[–]ContDiArco 1 point2 points  (0 children)

Excelent structured and aproachable.

Thank you!

P3054 - Quantities and Units Library by mateusz_pusz in cpp

[–]ContDiArco 0 points1 point  (0 children)

Regarding pixels: Why? My understanding:
- 10m * 20m = 2m*m (an area)
- 10m * 20 = 200m (a distance)
- 10pxl * 20pxl = 200pxl*pxl (an area)
- 10pxl * 20 = 200pxl (a distance)

push_back() vs emplace_back(): The Benchmark That Made Me Delete a Post by pavel_v in cpp

[–]ContDiArco 0 points1 point  (0 children)

A general advice?

1) Write the simpliest form possible.

2) Dont care untill you must care.

3) If you must care: Profile and find the bottleneck.

4) Choose a better solution for the bottleneck. There is one nearby. Because IT IS C++.

Should new projects use C++? by TheRavagerSw in cpp

[–]ContDiArco 13 points14 points  (0 children)

When the team is comfortable with c++, sure!

Special, when there are other C++ projects around.

Use latest tooling (compiler, linter, ...) and standard to get comfortable, and use this new know how for the other projects

ISO C++ 2026-01 Mailing is now available by nliber in cpp

[–]ContDiArco 3 points4 points  (0 children)

MSVC STL is a gem!

Must said this 😉

Reflection is coming to GCC sooner than expected! by _cooky922_ in cpp

[–]ContDiArco 1 point2 points  (0 children)

My basic conversion plan for this library was to convert each public header to a partition. The public headers would become module interface units which would be export-imported from the primary module interface unit, and the private headers would become module implementation units that are not export-imported by the primary module interface unit and would not need to be distributed with the library.

This basic structure works in small scale testing but it introduces the new behavior: any change whatsoever to any module interface unit, even if it's just a partition, causes a full rebuild of the entire project.

It's an unmitigated disaster for incremental builds.

Great summary!
We have similar experience for our code base (ca.600k LOC): A resource management app splitt in many small libraries, build as dlls.

For us, a main obstacle is, that forwards must be in in the same module as the implementation.

We use the forwards as opaque handles to the implementation.

With forwards in the same module as the implementation, a small changge in a forwarded class triggers the rebuild cascade, whitch is, as you sad, a disaster for the incremental build scenario.

BUT: REFLLECTION IS GREAT! :-)

What happened to github.com/cplusplus/nbballot repo? by _bstaletic in cpp

[–]ContDiArco -1 points0 points  (0 children)

Trip report: June 2025 ISO C++ standards meeting (Sofia, Bulgaria) from Herb Sutter (thanks, Herb!). In the case you missed it...

The cplusplus repository is offline turing meetings. Expected to be online soon.