Objavljeno: 21.8.2014 05:00

C++14 je tu

Po treh letih dobivamo novo generacijo standarda ISO/IEC, ki opisuje programski jezik C++. Standard 14882:2011 je bil sprejet avgusta 2011 in je zamenjal tistega iz leta 2003, sedaj pa je tu že verzija 2014.

Delovni osnutek novega standarda z letnico 2014 smo dobili marca letos, minuli petek se je končalo glasovanje o standardu, izdelek pa so ta teden predstavili kot končno verzijo standarda C++. Čeprav C++14 uradno še ni izšel, ker ga ISO še ni potrdil, sprememb ne bo (razen popravkov tiskarskih napak), zato si lahko končno verzijo že ogledamo.

Tri leta so najkrajša doba med izidoma dveh verzij C++, ki je doslej napredoval počasneje. Prvo standardizacijo smo dobili šele leta 1998, medtem ko je bil C++ naokrog vse od leta 1983, ko ga je v Dellovih laboratorijih razvijal Bjarne Stroustrup. Naslednje verzije so izšle v letih 2003, 2007 in 2011. Pomembna razlika od dosedanjih verzij so tudi prevajalniki, ki C++14 v večji meri že podpirajo, medtem ko je bilo treba v preteklosti nanje po sprejetju standarda še počakati.

Naslednjo verzijo si obetamo v letu 2017, ko bodo v C++ morda našli pot tudi moduli in koncepti. Prav tako C++14 ni zastaril (deprecated) nobene pomembne funkcije, je pa na dobri poti tja st::rand. Glavne novosti, ki jih prinaša C++14, so precej uporabne. Na prvi pogled najbolj očitna je uvedba enojnega narekovaja za združevanje cifer (digit separator), tako da lahko sedaj milijardo pregledno zapišemo kakor 1'000'000'000. Druge spremembe so pod pokrovom. Funkcije lahko sedaj same ugotovijo, v katerem tipu spremenljivke vračajo rezultat (return type deduction for normal function). Potem je tu podpora za binary literals pri deklaraciji (npr. char c = 0b01011010), generične lambda izraze, deklaracija spremenljivk kot predloge (variable templates), manj stroge omejitve za funkcije, ki se ocenijo šele ob prevajanju (constexpr), in še precej zelo uporabnih novosti.

Standard bo ISO uradno potrdil jeseni letos.

https://isocpp.org/blog/2014/08/we-have-cpp14

Naroči se na redna tedenska ali mesečna obvestila o novih prispevkih na naši spletni strani!

Komentirajo lahko le prijavljeni uporabniki

 
  • Polja označena z * je potrebno obvezno izpolniti
  • Pošlji