Making Boost.Signals2 More OOP‐Friendly
The observer design pattern is by far the most popular and widely known among behavioural design patterns. Unfortunately, unlike other mainstream languages out there, the C++ standard library doesn’t provide out of the box observer implementation. This article suggests an observable mixin based on Boost.Signals2 which makes it easy to build an observer.
Resource Management with Explicit Template Specialisations
Here’s my article from the April 2015 issue of Overload journal. It shows how to build a convinient RAII wrapper with the help of interesting static polymorphism technique based on explicit template specialisation.
Providing Explicit Specialisations for Non‐Template Members of Class Template
It is a well-known fact that you can provide explicit specialisations for function templates and class templates. But it was a total surprise to me that you can define explicit specialisations for non‐template members of class template without specialising the class template itself!
Using Coverity Scan with AppVeyor
Unlike Travis CI, AppVeyor currently lacks out of the box integration with Coverity Scan. In this article I’ll show you how to enable Coverity Scan code analysis for your project by injecting custom PowerShell scripts into AppVeyor build process.