Android++ is now open source

The title says all:

Android++ is now open source

From the article:

Android++ is a freely distributed extension and associated MSBuild scripts designed to enable Android application development within Visual Studio. Primarily for NDK based C/C++ applications, it also incorporates customisable deployment, resource management, and integrated Java source compilation.

Wandbox online compiler -- Bartosz Bielecki

The online compiler Wandbox offers new functionality.

Wandbox

It offers now the following features:

  • support for newest (HEAD) versions of GCC and Clang
  • support for various versions of Boost (from 1.47 to 1.60)
  • support for emacs/vim key bindings
  • permalinking your code snippets

CppCast Episode 40: UndoDB and Live Recorder with Greg Law

Episode 40 of CppCast the only podcast for C++ developers by C++ developers. In this episode Rob and Jason are joined by Dr. Greg Law to discuss reverse debugging with Undo Software.

CppCast Episode 40: UndoDB and Live Recorder with Greg Law

by Rob Irving and Jason Turner

About the interviewee:

Dr. Greg Law is co-founder and CEO at Undo Software. He has spent nearly 20 years writing systems-level code, including novel kernel designs and networking architectures in academia and at a variety of start-ups. Greg finds it particularly rewarding to turn innovative software technology into “real” business development. He still gets to write some code, although sadly most of his coding these days is done on aeroplanes. Greg lives in Cambridge, England with his wife and two children.

Modern C++ Features – keyword `noexcept`--Arne Mertz

Explications of the noexcept keyword:

Modern C++ Features – keyword `noexcept`

by Arne Mertz

From the article:

I have written about handling exceptions some time ago, and about the levels of exception safety last week. What I have not touched yet are exception specifications. I will catch up on those with this post.

C++98 had the possibility to denote the types of exceptions that could be thrown from a given function by using throw(<exception list>). In theory, the runtime had to check if any exception emitted by the function was indeed in that list or derived from one of the types in the list. If it wasn’t, the handler std::unexpected would be called...

C++ User Group Meetings in January

The monthly update of C++ User Group Meetings at Meeting C++:

C++ User Group Meetings in January 2016

by Jens Weller

From the article:

The monthly overview on upcoming C++ User Group meetings! There is a new C++ User Group in Iasi, Romania and a lot of C++ User Groups which are meeting in January!

Maybe you want to start a C++ User Group in 2016? Also feel free to contact me on the topic!

C++Now 2016 Call for Submissions is Live

C++Now 2016 will be held in Aspen, May 9–14, 2016.cpp_Now.png

C++Now 2016 Call for Submissions

From the invitation:

Building upon the resounding success of previous BoostCon and C++Now conferences, C++Now 2016 will present leading speakers from the whole C++ community.

The C++Now Conference is dedicated to discussion and education about C++, an open and free language and standard.  Our Conference will focus on discussion and education about open source software usage and developments in the C++ developer and user community. To reflect the breadth of the C++ and Boost communities, the conference includes sessions aimed at three constituencies: C++ and Boost end-users, hard-core library and tool developers, and researchers pushing the boundaries of computation. The program fosters interaction and engagement within and across those groups, with an emphasis on discussion.


As a multi-paradigm language, C++ is a melting pot with the most compelling ideas from other programming communities blending in powerful ways. Historically, some of the most popular sessions at C++Now have highlighted these concepts, from DSLs to functional programming to transactional memory and more.  Bring your C#, Python, Ruby or Haskell influences to bear in an environment that will broaden their exposure.

At C++Now 2016 we would like to focus on the now established C++11 and C++14 standards and how those standards shape C++’s future. However, by no means is this intended to restrict the topics of proposals we hope to see. Any other topic related to C++, as described below, is suitable for submission.

This year's window for submitting is shorter than normal. Submissions must be in by January 29th, less than four weeks away.

 

A flexible lexicographical comparator for C++ structs--Björn Fahller

An interesting article:

A flexible lexicographical comparator for C++ structs

by Björn Fahller

From the article:

We've all hand crafted comparison operators for structs with many members, and we've all cursed the tedium. It's all right for equality comparison, but lexicographical ordering relations is a different story when there are more than two members.

Hopefully all C++ developers have by now learned about the std::tie()-idiom.

struct S
{
  int a;
  int b;
  int c;
};

bool operator<(const S& lh, const S& rh)
{
  return std::tie(lh.a, lh.b, lh.c)
       < std::tie(rh.a, rh.b, rh.c);
}

Levels of Exception Safety--Arne Mertz

A nice introduction to C++ exceptions:

Levels of Exception Safety

by Arne Mertz

From the article:

Exceptions are part of C++. They are thrown by the standard library classes, and sometimes even if we are not really using the standard library. So, unless we are in a very restrictive environment like embedded programming and have exceptions disabled in the compiler, we need to be prepared and deal with the fact that exceptions simply can happen.