Comment by waynecochran
Comment by waynecochran 6 months ago
A small kitten dies every time C++ is used like its 1995.
void (*fn)(void*, T) = nullptr;Comment by waynecochran 6 months ago
A small kitten dies every time C++ is used like its 1995.
void (*fn)(void*, T) = nullptr;To save the kitten, one could at least write classes that override the call operator::(). No need for void* or any ptrs at all and std::function is avoided as well. That will at least get you to 2010 C++ code.
At this point, C++ has long abandoned C at the language level. If you are going to write C code, write C code -- don't hamstring modern C++.
That is the only thing "modern" in the above code and it does not save the kitten.
And another one dies every time you need to step through a call to std::function. Whatever you do, the kittens are never going to escape.