C++17: Latest Features Coming To 33-Year-Old Programming Language

C++17: New Features Coming To 33-Year-Old Programming Language..What the ISO C++ committee added to the C++17 working draft at the Oulu 2016 meeting




The C++17 is taken standing and putting new features to the classic programming language. This significant update is designed to create C++ an easier language to work alongside and delivers effective technical requirements.


During the latest criteria meeting in Oulu, Finland, the actual and final features list of C++ is finalised. This means that, C++17 has turned into a major release similar to C++98 and C++11.

The latest C++ 17 standards are launching new features such as structured bindings and if initialisers, creating this classic programming language “feature complete”.

The C++ community is calling C++17 the beginning of a new era designed to take robust technical specifications. The non-C++17 features will likely be revealed later as add-ons in the future releases.



Here’s the list of the highest features that were voted during the meeting:
 

Templates and Generic Code

Lambda

Attributes

Syntax cleanup

Cleaner multi-return and flow control

  • Structured bindings
    • Basically, first-class std::tie with auto
    • Example:
      • const auto [it, inserted] = map.insert( {"foo", bar} );
      • Creates variables it and inserted with deduced type from the pair that map::insert returns.
    • Works with tuple/pair-likes & std::arrays and relatively flat structs
  • if (init; condition) and switch (init; condition)
    • if (const auto [it, inserted] = map.insert( {"foo", bar} ); inserted)
    • Extends the if(decl) to cases where decl isn't convertible-to-bool sensibly
  • Generalizing range-based for loops
    • Appears to be mostly support for sentinals, or end iterators that are not the same type as begin iterators, which helps with null-terminated loops and the like.

Misc

Library additions:

Data types

Invoke stuff

  • std::invoke
    • Call any callable (function pointer, function, member pointer) with one syntax. From the standard INVOKE concept.
  • std::apply
    • Takes a function-like and a tuple, and unpacks the tuple into the call.
  • std::is_callable
  • std::make_from_tuple, std::apply applied to object construction

File System TS v1

Parallelism TS v1

  • The linked paper from 2014, may be out of date
  • Parallel versions of std algorithms, and related machinery

(parts of) Library Fundamentals TS v1 not covered above or below

Container Improvements

Other std datatype improvements:

Misc



Isocpp.org has an even more detailed list of documents, a few of which I looted for on top. Now it is not up-to-date exactly what is approved into C++17.
these slides had some features missing elsewhere.


Despite "what was eliminated" wasn't questioned, this is a short list of a few things ((mainly?) earlier deprecated) being removed in C++17 from C++:

Removed:



Spec changes:



You can check out Reddit to obtain the detailed information of the new modifications arriving with C++17.


In conclusion, C++17 is actually a major update that includes plenty of smaller features which are likely to help make this language a lot more understandable.

Comment below.

COMMENTS

BLOGGER: 1
Loading...
Name

2014,1,2016,1,2d concave Collider,1,32 bit,1,3d,2,3D Interactive Sandbox,1,3d scanning,1,activations,1,Adcolony,1,admob,1,Alternative app stores,1,alternatives,1,Amazon,1,AMD,1,analytics,1,android,6,Android SDK Tools,1,angrybirds,1,APK,1,App,6,App Review,1,apple,1,as,1,ASO,1,Assets,8,augmented reality,1,AVPro QuickTime,1,beginner,2,behind the scene,4,BigMiniGolf,1,Bravo Storm Beta,3,bugfix,1,Buy,1,c#,3,camera,1,Cardboard,1,CGTrader,1,China,1,chrome,2,chromebook,1,clash of clans,1,Collaboration,1,collider,1,colors converter,1,companies,1,contest,1,Cpi,1,CrossyRoad,1,DEPENDENCY INJECTION,1,Downloads,12,drawcalls,1,dropbox,2,EA,1,EditorVR,1,error,6,Error building Player,1,facebookdevelopers,7,facebookUnitySDK,4,Failed,1,flapflap,1,Flappybird,1,flapybird,1,Fog,1,free,35,free post,4,future,1,game,5,Game Companies,1,game design document template,1,Games,1,gamestory,1,GDC,1,GIMP,1,git,1,github,5,GLOBAL GAME JAM 2015,1,Google,1,Google Daydream,1,Google play store,3,googledevelopers,6,graphics,1,Guides,23,Hacknslash,1,Headless Mode,1,Health,1,Heroku,1,How to Code,1,HowTo,8,Income,1,India,1,indie,2,Indie teams,3,infographics,3,information,7,Intel,1,iOS,3,iPhone,1,Issues,1,javascript,1,jdk installation,2,keyboardshortcuts,3,Language,2,learn,5,Level Eleven,1,license error,1,Linux,2,List,1,madebyunity,3,madewithunity,5,mo,1,mobile,1,mobogenie,1,monetize,2,mouse tricks,1,Must,1,news to know,24,NullReferenceException,1,Object,1,oculus,3,Official,3,open beta,1,open source,3,optimization,1,Paint.net,1,performance,1,permission,1,PKBhaag,1,plugins,7,Pokemon Go,1,polijoy,1,production,1,Profitable,1,programmer,2,Promote Your App,3,psd,2,Publish,2,realsense,1,reddit,1,release,3,render settings,1,reskin,1,Resources,2,Russia,2,scripts,4,SDK,4,SHADERS,4,Similar,1,skybox,1,Slender,1,soomla,1,Source Codes,1,SourceCodes,2,sponsored post,1,Sprites,1,Staff Pick,8,strategies,1,textures,1,Tilt Brush,1,tools,8,tricks,8,Tutorial,20,Unable to find,1,unite 2013,1,unite 2017,1,unity,9,Unity 2d Pathfinding,3,unity 2d water,1,Unity AdMob Plugin,1,Unity Forum,1,unity timer,1,unity web player,3,Unity Windows 10 Crash,1,Unity Without Borders,1,Unity2d,4,unity4.6,1,unity5,13,useful apps,1,Version,1,virtal reality,2,Virtual Reality,1,Visual Studio,1,vouchers,1,voxel,1,VR,2,webplyer,5,win,2,windows,2,wordpress,2,
ltr
item
Unity 3d Tutorials: C++17: Latest Features Coming To 33-Year-Old Programming Language
C++17: Latest Features Coming To 33-Year-Old Programming Language
C++17: New Features Coming To 33-Year-Old Programming Language..What the ISO C++ committee added to the C++17 working draft at the Oulu 2016 meeting
https://1.bp.blogspot.com/-mN_9YB5ZAAU/V3fsHFjfB8I/AAAAAAAAGuA/TQE9TzMIAVkrH1eDctDe9Cy57ZKCelguwCK4B/s1600/c%252B%252B%2B17%2Bnew%2Bfeatures.PNG
https://1.bp.blogspot.com/-mN_9YB5ZAAU/V3fsHFjfB8I/AAAAAAAAGuA/TQE9TzMIAVkrH1eDctDe9Cy57ZKCelguwCK4B/s72-c/c%252B%252B%2B17%2Bnew%2Bfeatures.PNG
Unity 3d Tutorials
http://unity3diy.blogspot.com/2016/07/c17-new-features-Programming-Language.html
http://unity3diy.blogspot.com/
http://unity3diy.blogspot.com/
http://unity3diy.blogspot.com/2016/07/c17-new-features-Programming-Language.html
true
8957287156628097350
UTF-8
Loaded All Posts Not found any posts VIEW ALL Readmore Reply Cancel reply Delete By Home PAGES POSTS View All RECOMMENDED FOR YOU LABEL ARCHIVE SEARCH ALL POSTS Not found any post match with your request Back Home Sunday Monday Tuesday Wednesday Thursday Friday Saturday Sun Mon Tue Wed Thu Fri Sat January February March April May June July August September October November December Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec just now 1 minute ago $$1$$ minutes ago 1 hour ago $$1$$ hours ago Yesterday $$1$$ days ago $$1$$ weeks ago more than 5 weeks ago Followers Follow THIS CONTENT IS PREMIUM Please share to unlock Copy All Code Select All Code All codes were copied to your clipboard Can not copy the codes / texts, please press [CTRL]+[C] (or CMD+C with Mac) to copy