UPDATE: As of 2024 I recommend using the algorithms outlined in this post instead.

Many newer object oriented languages such as Java and Swift have a dedicated interface type for defining the methods of a superclass. C++ does not. What C++ does provide is purely virtual classes, which function in ess

A couple of years back I interviewed for an SDE role at Amazon. For those not familiar with the Amazon hiring process, after you pass there screening technical test, and a personality evaluation, the final part before being given an offer involves a mu

As Bob Dylan once said "The times they are a-changing", and changing they are. Modern computer architectures are making heavier use of more cores and ever increasing levels of cache. The order in which instructions are execute