C++17

Is a function in RailControl missing or do you have any ideas?
Post Reply
User avatar
Mebus
Posts: 19
Joined: Sat May 08, 2021 2:25 pm

C++17

Post by Mebus »

Hey Teddy,

as I noticed you are still using C++11. I think it would be great to go to C++17 to have some more modern C++ features available. How do you think about that and why did you go for C++11 only?

Thanks

Greetings

Mebus
User avatar
teddy
Site Admin
Posts: 259
Joined: Thu May 07, 2020 2:39 pm
Contact:

Re: cmake & C++17

Post by teddy »

Hi Mebus

cmake is a great tool for Linux. But on other platforms it is not available the same easy way. On Mac it is not part of the standard dev tool chain. And on Windows some features are not available/working. In contrary GNU make is available, known and working on all platforms.
I already gave cmake a try (CMakeLists.txt is in the repository), but it is far away from working on all platforms (never the less I use it for development).

Basically I am using C++11 because on my modelrailway computer is still installed Ubuntu 14.4 LTS which does not know C++17. I know I could update, but this is work and I know it was a pain to get the screen and GPU working together (only with proprietary drivers). RailControl is and will be designed to run on old and low performance hardware. It is not designed to test and adopt the latest and greatest new features of C++. With C++11 a lot of features have been introduced I was missing before and I was happy to have them available. The new features of C++ 17 and later are in my eyes not that important and/or helpful.

In my "real life" I still have to implement software with a C++98 compiler which still knows the segmented mode introduced by Intel in 1978 (Most resent developers even don't know what segmented mode was). Old compilers are very common in the industry. So therefore my point of view may be a bit limited.

Greetings
Teddy
Post Reply