C++ Tips on Initialization

C++ initialization is tricky. Check out Abseil's C++ Tips on initialization, which we've published over the past two weeks:

Fro​m Tip of the Week #142:


"Prior to C++11, the explicit keyword was meaningful only for constructors that could be called with a single argument, and our style guide required its use for such constructors so that they did not act as 'converting constructors.' That requirement was not applied for multi-parameter constructors. Indeed the style guide used to discourage use of explicit for multi-parameter constructors as it had no meaning. That’s no longer the case."

New: C++ Foundation Developer Survey "Lite", 2018-02

cpp_logo.pngToday the Standard C++ Foundation opened its first-ever global C++ developer survey. As the name suggests, it's a one-pager:

C++ Developer Survey "Lite": 2018-02

Please take 10 minutes or so to participate! A summary of the results, including aggregated highlights of common answers in the write-in responses, will be posted publicly here on isocpp.org and shared with the C++ standardization committee to help inform C++ evolution.

If this one is successful we plan to do it again, perhaps annually or quarterly.

Thank you for participating and helping to inform our committee and community.

CopperSpice: Undefined Behavior

New videos on the CopperSpice YouTube Channel:

C++ Undefined Behavior

by Barbara Geller and Ansel Sermersheim

About the video:

A look at the topic of Undefined Behavior in C++. We discuss what UB is, what can happen when your program experiences UB, and how to avoid it.

Please take a look and remember to subscribe!

C++ Exception Handling: The gory details of an implementation -- Peter Edwards

The gory details of an C++ exception handling implementation.

C++ Exception Handling Implementation

by Peter Edwards

Abstract:

Modern implementations of exception handling make the facility almost cost free for those times you don't actually end up throwing an exception. There's a big complexity cost to this, and a lot of work that happens when we step off the happy path. This presentation rolls up its sleeves and looks at what actually happens when you throw an std::exception() on modern Linux systems.

CppCast Episode 139: Competitive Coding with Conor Hoekstra

Episode 139 of CppCast the only podcast for C++ developers by C++ developers. In this episode Rob and Jason are joined by Conor Hoekstra to discuss Competive Coding websites and competitions.

CppCast Episode 139: Competitive Coding with Conor Hoekstra

by Rob Irving and Jason Turner

About the interviewee:

Conor Hoekstra works at Moody's Analytics as a C++ Software Developer helping maintain and develop an insurance software program called AXIS. Wanting to develop better algorithm and data structure knowledge he started using online sites like HackerRank and LeetCode to do so. He now has a YouTube channel where he reviews the contests from the last week of Competitive Coding sites like HackerRank, LeetCode, topcoder and Codeforces) and also covers solutions to the trickier problems.

A cake for your cherry: what should go in the C++ standard library? -- Corentin Jabot

A reply to Guy Davidson’s article “Batteries not included: what should go in the C++ standard library?”.

A cake for your cherry: what should go in the C++ standard library?

by Corentin Jabot

From the article

Over the past few years there has been a push to include a graphics library into the C++ standard. It would be something a bit like cairo. Or SDL.

I do think this is a path that should not be pursued. Let me tell you why...