Is there a specific time to use C ++ 11 over C ++ 17

Let's say I want to create a modern C ++ application. I have null code that requires backward compatibility with C ++ 98/03. Is there a reason for choosing C ++ 11 or C ++ 14 over C ++ 17?

Examining this, it seems that no violations occur between C ++ 11 and C ++ 17. It seems that C ++ 17 is C ++ 11 with a lot of functions. I understand that there are more compilers that support C ++ 11 functions than all new C ++ 17 changes.

So, compiler support is a consideration, because it can affect portability. Also C ++ 17 is not officially released, but at some point it will be.

What are the criteria that I have to evaluate in order to choose between C ++ 11 and C ++ 17? I am looking for reasons based on opinions.

Thank!

+4
source share
2 answers

I feel that it will be closed, as vague, based on opinions, but what the hell. Keep in mind that 14 is also between 11 and 17, and is much more widely supported. Basically, there is no reason to use 11 over 14 for the new codebase now that I can think of. For 17, the problem is, as you said, compiler support. If you need to target windows, MSVC still lacks the support of 17: http://en.cppreference.com/w/cpp/compiler_support#C.2B.2B17_features .

, - 17, , 2, 3 , , .

, 17. ( : MSVC, 17 , , - , . , , , ).

+3

, , ++, - , .

  • ( ) ,
  • .
  • , , .

0

Source: https://habr.com/ru/post/1684159/


All Articles