GoingNative 56: CMake in Visual Studio
In this episode, Marian Luparu and Iyyappa Murugandi chat with Steve about CMake support in Visual Studio:
GoingNative 56: CMake in Visual Studio
with Steve Carroll, Marian Luparu and Iyyappa Murugandi
March 11-13, Online
March 16-18, Madrid, Spain
March 23-28, Croydon, London, UK
March 30, Kortrijk, Belgium
May 4-8, Aspen, CO, USA
May 4-8, Toronto, Canada
June 8 to 13, Brno, Czechia
June 17-20, Folkestone, UK
September 12-18, Aurora, CO, USA
November 6-8, Berlin, Germany
November 16-21, Búzios, Rio De Janeiro, Brazil
By Marco Arena | Feb 17, 2017 07:08 AM | Tags: visual studio
In this episode, Marian Luparu and Iyyappa Murugandi chat with Steve about CMake support in Visual Studio:
GoingNative 56: CMake in Visual Studio
with Steve Carroll, Marian Luparu and Iyyappa Murugandi
By Adrien Hamelin | Feb 15, 2017 03:31 PM | Tags: intermediate c++11
Do you feel the same way?
Lambda Overdose
by Arne Mertz
From the article:
Lambdas are a nice recent addition to C++. They are cool, they are hip, and they tend to be overused and misused.
Since lambda expressions came up in C++11 and got a huge boost in usability in C++14, they have been all the rage. Don’t get me wrong. Lambdas really are useful and cool and everything. But reading blog posts, the CppLang Slack channel and other sources lately has given me the impression that some people use lambdas in ways they should not be used...
By Meeting C++ | Feb 14, 2017 04:41 AM | Tags: qt intermediate experimental advanced
An update on the HTML Text Editor I hacked with Qt and TinyMCE3:
Refactoring the HTML Text Editor for QWebEngine
by Jens Weller
From the article:
In the last post, I described my experience with using MSVC as a compiler in combination with QtCreator. The reason I set this up was, that with Qt 5.7 QWebkit isn't anymore supported, and the HTML TextEditor based on tinymce3 is a central part of my application. Instead of QWebkit there is now QWebEngine, based on chromium, a very fine solution...
By Adrien Hamelin | Feb 13, 2017 12:52 PM | Tags: community
ACCU’s Overload journal of February 2017 is out. It contains the following C++ related articles.
Overload 137 is now available
From the journal:
Mean Properties
Property based testing is all the rage. Russel Winder walks us through an example of properties an arithmetic mean function should have. by Russel Winder
The Importance of Back-of-Envelope Estimates
Guestimate questions make many people grumble. Sergey Ignatchenko reminds us why they matter. by Sergey Ignatchenko
Multiprocessing and Clusters in Python
Multiprocessing is possible in Python. Silas S. Brown shows us various ways. by Silas S. Brown
doctest – the Lightest C++ Unit Testing Framewor
C++ has many unit testing frameworks. Viktor Kirilov introduces doctest. by Viktor Kirilov
Correct Integer Operations with Minimal Runtime Penalties
Results of C++ integer operations are not guaranteed to be arithmetically correct. Robert Ramey introduces a library to enforce correct behaviour. by Robert Ramey
By Adrien Hamelin | Feb 13, 2017 12:48 PM | Tags: intermediate
Quick A: No write is triggered so no data race occurs.
Recently on SO:
why there is no data-race in the following case?
Data races are not static properties of your code. They are properties of the actual state of the program at execution time. So while that program could be in a state where the code would produce a data race, that's not the question.
The question is, given the state of the system, will the code cause a data race? And since the program is in a state such that neither thread will write to either variable, then the code will not cause a data race.
Data races aren't about what your code might do. It's about what they will do. Just as a function that takes a pointer isn't undefined behavior just because it uses the pointer without checking for NULL. It is only UB if someone passes a pointer that really is NULL.
By Jason Turner | Feb 13, 2017 10:36 AM | Tags: intermediate c++17
Episode 50 of C++ Weekly.
Inheriting Lambdas vs Generic Lambdas
by Jason Turner
About the show:
The last episode of C++ Weekly showed why and where we might want to inherit from lambdas and create a merged lambda with the signatures of two or more other lambdas. In this episode Jason compares a merged lambda with a generic lambda and what the pros and cons might be.
By Jon Kalb | Feb 12, 2017 01:34 PM | Tags: None
CppChat:
CppChat[10]: The Great Functor Debate (Ben, Jackie, and Jonathan)
with Ben Dean, Jackie Kay, Jonathan Müller, and Jon Kalb
From the chat:
Ben, Jackie, Jonathan, and Jon discuss Jackie's blog about using the word functor and foonathan's latest blog post about policy objects. Ben discusses using variant for state machines and Jon rants.
By robwirving | Feb 10, 2017 08:36 AM | Tags: None
Episode 88 of CppCast the only podcast for C++ developers by C++ developers. In this episode Rob and Jason are joined by Stephan T. Lavavej to talk about Microsoft's STL and some of the changes to the Library coming in the VS 2017 release.
CppCast Episode 88: Microsoft's STL with Stephan T. Lavavej
by Rob Irving and Jason Turner
About the interviewee:
Stephan T. Lavavej is a Principal Software Engineer at Microsoft, maintaining Visual C++'s implementation of the C++ Standard Library since 2007. He also designed a couple of C++14 features: make_unique and the transparent operator functors. He likes his initials (which people can actually spell) and cats (although he doesn't own any).
By Meeting C++ | Feb 10, 2017 03:26 AM | Tags: tools qt boost basics
A first posting about working with Qt and Visual C++ in QtCreator
Using QtCreator together with the Visual Studio Build Tools
by Jens Weller
From the article:
For a while I've been using QtCreator as my IDE, mostly because its deep integration with Qt, as most of my projects are Qt related. With this, I also preferred (and still do a little) to use the MinGW builds of Qt on Windows. In the past, as GCC was a little bit better with the newer standards, today, well, never change a running system...
By zebedee | Feb 9, 2017 10:25 AM | Tags: None
Zebedee Mason discusses in his recent article some GOF idioms and analyzes them with his tool DeepsEnds.
Dependencies in the Gang of Four examples
by Zebedee Mason
From the article:
The example C++ code from the GoF (Gang of Four) book Design Patterns has had its dependencies analysed with DeepEnds. Certain examples have been refactored to remove circular dependencies enabled by pre-declaration of classes. These cycles in the graph serve to reduce the ability to subsequently modify the code with ease.