Moving our games programming videos - currently Runtime Compiled C++ - to the new dedicated enkisoftware Youtube channel. Consider giving it a subscribe https://www.youtube.com/@enkisoftware
Just looked up how to do callbacks in C++ and YOU CAN'T (unless you write a bunch of templates and wrappers yourself).
When you pass a pointer to non-static member function, yopu need to handle the class pointer yourself. This is like the simplest thing, why can't C++ have that?
Love how the ISO standard website just tells you "Don't". What a joke.
Cross-platform, cross-language development is quite tedious... 🙃
You need to wait for builds to finish, then test on three different OS with different ways to load things.
At least with a Windows machine, you get a Linux environment via WSL2 for free, although it doesn't launch via dotnet run.
And finally you also need access to macOS somehow.
All this time I've been using the return value of snprintf as the number of characters actually written, when it's in fact the number of characters that would be written if the max size passed in were large enough.
In fact: "If the resulting string would be longer than n-1 characters, the remaining characters are discarded and not stored, but counted for the value returned by the function."
After 10 years of commercial experience in #cpp I think I’m ready for a new chapter. I have played around with #rust#golang#zig and #clojure but most job offers that I see are for people with at least X years of commercial experience in this exact languages. Do you have any hints how to approach this? I would think that my previous experience as a #software engineer would matter. Especially since I do not expect to move to another senior role, I’m checking junior positions too. #jobsearch
Funny. I removed all modules from my C++ codebase (roughly 10% of it) and I got about 10-16% shorter compilation times. Not to mention Intellisense no longer crashing all over the place.
I wonder if it ever be a worthwhile feature to use.
I’ve been using new shiny languages for a while now. #Rust, #Zig and #Swift in particular.
I love Rust’s tooling, Swift’s syntax, and Zig’s philosophy, but I feel like good old #Cpp is still the goat.
Yeah, the syntax can get out of hand really quickly.
Yeah, the STL is bloated.
Yeah, the tooling ecosystem is a mess.
But at the end of the day, with a good style guide and some discipline, it can check most of my boxes.
But learning new languages is always fun so I’m still doing it 😬
I came across this article the other day, titled “Why Rust cannot replace C++”.
I feel that the author completely fails to understand the opposing argument. The article claims that with “new” C++ features like smart pointers, you can write safe code in C++, therefore Rust is unnecessary.
But I don’t want a language where I can write safe code, I want a language where I must write safe code.
I spent ~hour yesterday fighting an issue with my C++ code, only to later figure out it's a possible GCC bug, because Clang accepts the same code.
The issue is that GCC does not permit a constrained type parameter in a template template parameter of an aliased template. See the simplified code with the issue.
A cursory search of GCC Bugzilla does not readily show any related bug. I'll look carefully but lemme know if this is a known bug (probably is). 🙏🏽
;; Getting rid of explicit indexing was just step one.
-- After a few days/months/years, I now realize that it is more important and less buggy if I think only of the function to call (and whether I want to end up with a new (maybe pruned) collection, a single thing, or "both" (that's how I think of scans))