kera.name
Tomalak's Tuesday Tip #8: Outsmarting Static Initialization

Right or wrong, it's still trendy in some C++ circles to use the singleton pattern for defining a type that can only be instantiated at most once in an execution run. However, this can cause problems when you bring more static data into the mix.

It Is Not Called The "STL", Mmkay?

I ask everyone to stop using the erroneous term "STL".

Tomalak's Tuesday Tip #6: An Inclusion Pitfall

One of the evilnesses of the C++ Standard Library is that implementations — be they GCC's libstdc++ or the Dimkumware implementation used by MSVC — are free to have their headers include other standard headers as much as they like. This can lead to confusion.

Overcoming Name Shadowing In C++

I briefly explore a common inheritance gotcha and its usual solution.

Tomalak's Friday Fervent Opinion #1: Tabs Over Spaces

A programmer friend recently revealed that his company has a strict no-tabs policy, and that they are forced to use space indentation… at no fewer than eight spaces. This makes me sad. I explain why.

Tomalak's Monday Monstrous Rant #1: Align Your Asterisks!

I address the age-old debate of C and C++; which pointer initialisation syntax to use?

C++ Variable Initialisation: How To Do It Properly

I compare several approaches to object initialisation in C++.

C++ Lookup And Template Oddities

I explore a few oddities with templates and types in C++.

A Question On Indirect Constness

Why does C++ not allow conversion from `T**` to `T const**`?

Tomalak's Tuesday Tip #4: Conventional Thinking

I'm occasionally asked why C++ programmers conventionally use .cpp and .hpp files, what they use them for and what happens if they don't. On the spot I'll usually come out with the template answer that conventions exist for a reason, but I thought I might as well take a moment to explain more fully the reasoning behind this one.

Next Page »