6 ms·
Switching to C++ is relatively easy in an existing codebase. It's in many cases as simple as renaming a file from .c to .cpp. But for writing something from scr
by Panzerschrek 6mo ago
Switching to C++ is relatively easy in an existing codebase. It's in many cases as simple as renaming a file from .c to .cpp. But for writing something from scratch it's better to use Rust.
- uecker 6mo agoRenaming c. to .cpp may work with ancient c89 code, but not with anything remotely modern. But while the code then is technically C++, it is not better. I still prefer C for new projects to any other language, because I value short compilation time and reduced complexity. For me, this translates in higher productivity and more fun. With modern tooling, also most C issues are detected early.
- Panzerschrek 6mo agoSlightly tweaking C code to allow it working in C++ is still much easier compared to full rewrite in some other language.
- uecker 6mo agoSlightly tweaking might not always be sufficient. Reengineering my numerical code would certainly a bit of effort. But anyhow, I do not think C++ is better. Recently I removed one (!) file with templates (which someone else added) from one of my project because it doubled compilation times (in a project with 750 other files or so). I do no need slow build times, more complexity, and more footguns.
- safercplusplus 6mo ago> It's in many cases as simple as renaming a file from .c to .cpp. That is rather optimistic, but, for example, scpptool has a feature [1] that auto-converts from C to a subset of C that can (hopefully) be compiled with clang++. If the original C source uses C11 extensions, clang++ seems to generally produce warnings rather than compile errors. > But for writing something from scratch it's better to use Rust. scpptool attempts to make C++ a more viable option by enforcing a memory and data race safe subset using a similar safety strategy. [1] https://github.com/duneroadrunner/SaferCPlusPlus-AutoTranslation2/tree/master#auto-conversion-of-c-to-valid-c https://github.com/duneroadrunner/SaferCPlusPlus-AutoTransla...