TheCodez / dynamic-occupancy-grid-map

Implementation of "A Random Finite Set Approach for Dynamic Occupancy Grid Maps with Real-Time Application"
MIT License
278 stars 39 forks source link

C++ Standard #27

Closed cbachhuber closed 4 years ago

cbachhuber commented 4 years ago

I see that this project is using C++11. I wanted to suggest to go to a more recent version a couple of times already. In #26, I was e.g missing std::optional, which enables me to give my code a good structure.

I would like to suggest to go to at least C++14 (maybe even C++17). A counter-argument is of course that due to C++'s backward compatibility, an older standard gives more people access to your code. Still, C++14 introduces useful features, and going to a 6-year old standard should not harm the target audience too much. Additionally, the automotive industry (relevant for this project) has been using C++14 for years now, see e.g. the AUTOSAR standard.

What are your thoughts on this?

TheCodez commented 4 years ago

I'm all for using a newer standard. As I'm also having ROS support planned I have to check out if it's possible to use a C++ standard higher than C++ 11. If not we might be able to enable C++ 14 (or higher) for the demo project and keep C++ 11 for the DOGM project (it compilation supports that).

TheCodez commented 4 years ago

As of ROS Melodic we can use C++ 14, so raising the version to 14 is the way to go 👍

cbachhuber commented 4 years ago

Great, thanks a lot for checking and for the quick implementation! :)