C++ 14

I'm surprised I didn't see this posted today:

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

So after cosmetic touch-ups we will have a new standard. Now the three year wait for the next expected standard. The biggest thing I'm wanting to keep an eye on for the next standard update is the modules addition. What future additions are you keeping an eye on?
Modules would definitely be awesome if they get in. Concepts are a runner up on my wishlist.
I like that they're updating the standard more frequently. I wonder what the language will look like in 30 years after ten of these updates have gone through (assuming they keep it up).

Besides modules, I would like nested namespaces i.e.
namespace boost::filesystem {}
instead of
namespace boost { namespace filesystem {} }

Also, I would like strongly-typed enums to be implicitly castable to their base type, e.g.
1
2
3
4
5
6
7
8
9
enum class something {
    a,
    // ...
    count
};
// ...
std::array<T, something::count> array;

array[something::a] = T();

should work as expected without ugly casts. I know you can use std::map but that requires dynamic allocation where it's not always desired. I can't remember what I wanted this behaviour for but I ended up just using a normal enum inside a namespace to scope its members.

Alternatively, just get rid of strongly-typed enums altogether and replace enum class with enum namespace. Truth be told, I never wanted strongly-typed enums, I just wanted enum symbols to be scoped like they are in C#. I don't see what the benefit is of strongly-typed enums besides the scoping rules.
Last edited on
Now the three year wait for the next expected standard


The filesystem TS is done and is waiting for the final ballot to go to publication.

The Library TS and the Parallelism TS are out for national body comments.

Concurrency, concepts, networking, transactional memory, arrays, ranges, and the second library TS are all in the works.

These three years won't be boring!
Last edited on
This is awesome news! C++ just keeps getting better and better.
Clang is already implementing proposals for the next standard after C++14, by the way ;)

http://clang.llvm.org/cxx_status.html#cxx17
Woo!

Now if only someone could work on <windows.h>....
If you want the windows header worked on you will have to bug Microsoft on that one.
how long has it been since MS last updated it?
Last edited on
closed account (z05DSL3A)
how long has it been since MS last updated it?
If you are talking Windows API, not that long ago.

If you want a new Microsoft API, implemented in the C++ programming language and object-oriented by design, you will need to look at Windows Runtime (WinRT).
For anyone who is like me and hasn't kept up with the latest features in C++ (or even learned all of those in older standards) where might one go to learn about all the features and why/how they're used in programming... Basically is there any in depth tutorials or guides on every tiny aspect of C++?
http://www.isocpp.org is about the only place I can think of as it is where I keep up with it. It is also the site Bjarne Stroustrup recommends for getting help even though they lack a decent beginner area.
in depth tutorials or guides on every tiny aspect of C++?

Uh probably not. A lot of the in depth details you get just from using the language and reading lots of documentation. I doubt anybody knows every thing there is about the language anyways. You learn what you need to.
Wikipedia is a pretty good starting point for readable summaries of what's in the C++ 11 standard, and the C++14 standard.
I am excited to hear that.

And made a few research on c++14 implementation of gcc. Things are going awesome.

Also i found this
G++ supports the C++1y [[deprecated]] attribute modulo bugs in the underlying 
[[gnu::deprecated]] attribute. Classes and functions can be marked deprecated 
and a diagnostic message added:

Example
1
2
A aa; // warning: 'A' is deprecated : A is deprecated in C++14; Use B instead
int j = bar(2); // warning: 'int bar(int)' is deprecated : bar is unsafe; use foo() instead 


Which really excited me more.

Link : https://isocpp.org/blog/2014/04/gcc-4.9.0
chrisname wrote:
Besides modules, I would like nested namespaces i.e.
namespace boost::filesystem {}


Not got a clue what half the other stuff is but yeah I would love to see that
Topic archived. No new replies allowed.