Ist C ++ 21 der nächste Standard?

8

Ich habe eine Menge Buzz über C ++ 17 und C ++ 14 gehört, selbst als C ++ 11 eingeführt wurde.

Aber jetzt verstehe ich, dass C ++ 17 auf dem besten Weg ist, im Herbst 2017 (ohne Konzepte) zu liefern, aber ich bin mir immer noch nicht sicher, was der folgende Standard ist.

Ich habe C ++ 21 gehört. Ist das genau?

    
Jonathan Mee 05.08.2016, 12:48
quelle

3 Antworten

17

Als ISOCPP sehen wir

Was zeigt, dass zumindest jetzt C ++ 20 der Name ist, den sie benutzen.

    
NathanOliver 05.08.2016, 12:57
quelle
10

Niemand kann das genaue Veröffentlichungsdatum definitiv sagen. Aber angesichts der jüngsten C ++ - Releases C ++ 11, C ++ 14 und C ++ 17 scheint es, als hätten wir einen Veröffentlichungszyklus von drei Jahren.

Tatsächlich schrieb Herb Sutter im Juni 2016 :

  

Hinweis: [...] aber jetzt bleiben wir mit drei Jahren, also wird der nächste Standard nach C ++ 17 C ++ 20 sein.

Also wird es höchstwahrscheinlich C ++ 20 sein. Und alle Features, die bis dahin noch nicht fertig sind, werden wahrscheinlich auf eine spätere C ++ - Version verschoben.

Wenn Sie an C ++ Entwicklung interessiert sind, empfehle ich regelmäßig das C ++ Subreddit zu lesen. Es gibt natürlich viele weitere Ressourcen im Netz.

    
dhaumann 05.08.2016 12:58
quelle
7

Sie werden feststellen, dass C ++ 1z immer noch verwendet wird und jetzt ist die Funktion abgeschlossen. Aber es wird nicht C ++ 17 bis 2017 veröffentlicht .

An diesem Punkt sollten wir nicht über C ++ 20 oder C ++ 21 sprechen, selbst wenn das das Zieldatum ist. Wir sollten über C ++ 2a oder C ++ 2x sprechen.

Der aktuelle Plan sieht einen 3-Jahres-Release-Zyklus vor, und einige murren darüber, zum 2-jährigen Release-Zyklus zu wechseln. Aber es bleibt offiziell 3 Jahre, also ist das Zieldatum für das nächste 2020.

Wie sollen wir es jetzt nennen? C ++ 2x läuft auf das Problem hinaus, dass es in den 2020er Jahren mehr als 3 Standards geben wird. Bei 3 Jahren pro Freisetzung wären das 2020, 2023, 2026, 2029 - eine zu viele. Und es wurde darüber geredet, dass man es für einen 2-jährigen Veröffentlichungszyklus versuchen würde (vielleicht sogar für C ++ 2x, das 2019 herauskommen wird, was nach dem Erscheinen von C ++ 0x im Jahr 2011 urkomisch wäre).

Irgendeine solche Verwirrung wird das prahlerische Recht wert sein, den Namenszyklus zu unterbrechen, und könnte C ++ 2α oder C ++ 2 Ω einführen, was ein weiteres Plus ist.

Also die Antwort auf Ihre Frage: Der nächste Standard sollte zu diesem Zeitpunkt C ++ 2x genannt werden, und x kann einen beliebigen Wert zwischen -1 und +3 haben, wenn die Geschichte eine Richtlinie ist: Das Zieldatum ist 2020, aber ungefähr Die Hälfte aller C ++ - Standard-Releases kam nicht in dem Jahr, in dem sie geplant waren, vor, also nehmen Sie das mit einem Körnchen Salz.

    
Yakk 05.08.2016 13:50
quelle

Tags und Links