N4309: Return type deduction for explicitly-defaulted & deleted special member functions -- M. Price

A new WG21 paper is available. If you are not a committee member, please use the comments section below or the std-proposals forum for public discussion.

Document number: N4309

Date: 2014-11-17

Return type deduction for explicitly-defaulted and deleted special member functions

by Miohael Price

Excerpt:

Proposes to allow auto and declspec(auto) as the type-specifiers for the return type of explicitly-defaulted and deleted special member functions. It seems this case was left out of N3638.

N4263: Toward a concept-enabled standard library -- Matt Austern et al.

A new WG21 paper is available. If you are not a committee member, please use the comments section below or the std-proposals forum for public discussion.

Document number: N4263

Date: 2014-11-04

Toward a concept-enabled standard library

by Matt Austern, Gabriel Dos Reis, Eric Niebler, Bjarne Stroustrup, Herb Sutter, Andrew Sutton, Jeffrey Yasskin

Excerpt:

Now that the Concepts Lite TS is (almost) done, the next step is a version of the standard library that uses Concepts. Here are some informal notes on what we might want from such a library and what some of the incremental steps are for getting there.

N4316: std::rand replacement, revision 2 -- Zhihao Yuan

A new WG21 paper is available. If you are not a committee member, please use the comments section below or the std-proposals forum for public discussion.

Document number: N4316

Date: 2014-11-08

std::rand replacement, revision 2

by Zhihao Yuan

Excerpt:

Changes since N4217

  • Rename the seeding utility to reseed, which resets the distributions’ states if needed, based on SG6 comments.
  • Cleanup the wording with the term “unpredictable state” stolen from Walter’s paper[1].
  • Ask the question about exposing the per-thread engine in Future Issues.
  • Update motivation to reflect the status quo.

 

Cevelop Updated for the Eclipse Luna Service Release 1 -- Mirko Stocker

News about Cevelop, a C++ IDE for professional developers from the Institute for Software at HSR Hochschule für Technik:

Cevelop Updated for the Eclipse Luna Service Release 1

by Mirko Stocker

From the announcement:

We have rebased Cevelop on top of the latest Eclipse Luna Service Release SR1. The Eclipse CDT team used the chance to include some new features. For example, code completion can now show default arguments and gives you more information on template parameters... See the CDT 8.5 changelog for a comprehensive list of changes.

Quick Q: Which is more efficient, push_back(move(var)) or emplace_back(var)? -- StackOverflow

Quick A: 1. Those cases are not equivalent. 2. Emplace is more for when you don't already have a named object of the correct type...

Recently on SO:

Efficiency of C++11 push_back() with std::move versus emplace_back() for already constructed objects

In C++11 emplace_back() is generally preferred (in terms of efficiency) to push_back() as it allows in-place construction, but is this still the case when using push_back(std::move()) with an already-constructed object?

For instance, is emplace_back() still preferred in cases like the following?

std::string mystring("hello world");
std::vector<std::string> myvector;

myvector.emplace_back(mystring);
myvector.push_back(std::move(mystring));
// (of course assuming we don't care about using the value of mystring after)

Additionally, is there any benefit in the above example to instead doing:

myvector.emplace_back(std::move(mystring));

or is the move here entirely redundant, or has no effect?

Quick Q: How do I make an array of shared_ptrs to unrelated types? -- StackOverflow

Quick A: Try vector<shared_ptr<boost::any>>.

Recently on SO:

Array of shared pointers to different classes

I am new to c++11 programming and now I'm trying to figure out if it is possible to create an array of shared pointers to different types. For example, something like that:

vector<shared_ptr<**???**>> v;
v.push_back(shared_ptr<int>(new int));
v.push_back(shared_ptr<MyClass>(new MyClass()));

or any other way to pass shared_ptr without knowing its type.

CppCon videos now even more widely available via Channel 9

cppcon-c9.pngThis just in on CppCon.org:

Video Availability Increased

As of today, CppCon 2014 session videos are available on Channel 9 at: http://channel9.msdn.com/Events/CPP/C-PP-Con-2014

The videos were originally made available and are still available on the CppCon YouTube channel at: https://www.youtube.com/CppCon

After posting the videos on YouTube, we received requests for additional availability from countries where YouTube is not available. We’ve worked with Channel 9 to be an additional hosting site. Channel 9 is available in countries where YouTube is not, so this helps us in our goal of supporting C++ developers all over the world.

Channel 9 also supports downloading the sessions in a number of formats, including audio only, for offline use.

The CppCon 2014 conference videos feature are over 100 sessions of C++ content from many of the world’s best C++ experts, all professionally recorded and edited by Bash Films. We are grateful to both YouTube and Channel 9 for hosting our content.

Illinois Hosts International C++ Standards Conference -- Tom Moone

Following the recent ISO C++ meeting hosted by Riverbed and the University of Illinois at Urbana-Champaign, the University posted this summary of the event:

Illinois Hosts International C++ Standards Conference

By Tom Moone 

The article includes a link to Bjarne Stroustrup's talk to the faculty and students:

Illinois was selected as the location for this conference for two reasons. First, the location was capable of providing a week’s worth of meeting space for the 100 or so attendees in plenary and breakout sessions from 8 a.m. to 10 p.m. Second, the department, together with the local office of Riverbed Technology, offered to host the conference. “We are entirely dependent on being invited,” explained Sutter. “So we are very grateful to the department for accommodating us.”

On Monday evening of the conference, Stroustrup gave a talk as part of the CS Department’s Distinguished Lecture Series titled “C++ as a Modern Language.” In the talk he explained how to program in that language using type safety, resource safety, unmatched performance, and a terse notation. Enthusiasm for this lecture was literally overwhelming as the audience filled auditorium in the Siebel center to standing room only, and two overflow rooms were opened up to watch the talk with a live stream.

N4298: Agenda and Meeting Notice for WG21 Ballot Resolution Telecon Meeting -- Herb Sutter

New WG21 papers are available. If you are not a committee member, please use the comments section below or the std-proposals forum for public discussion.

Document number: N4298

Date: 2014-11-14

Agenda and Meeting Notice for WG21 Ballot Resolution Telecon Meeting

by Herb Sutter

Excerpt:

This telecon has the specific agenda of finalizing PDTS ballot resolution for the Library Fundamentals PDTS (19568) and the Parallelism PDTS (19570). Most comments were already considered and given draft resolutions at the Urbana-Champaign WG21 meeting on November 8, and this telecon meeting will review those resolutions and ensure we resolve all official PDTS comments from SC22.