From 0a159446650b76ad229ad216d286f67f3dca4242 Mon Sep 17 00:00:00 2001 From: Ralph Tandetzky Date: Sat, 7 Mar 2015 20:39:47 +0100 Subject: [PATCH] Added C++11 guideline for member initialization. --- 03-Style.md | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/03-Style.md b/03-Style.md index 92a038e..2f5a03e 100644 --- a/03-Style.md +++ b/03-Style.md @@ -223,6 +223,16 @@ private: }; ``` +In C++11 you may consider to always give each member a default value, e.g. by writing +```cpp +// ... // +private: + int m_value = 0; +// ... // +``` +inside the class body. This makes sure that no constructor ever "forgets" to initialize a member object. +Forgetting to initialize a member is a source of undefined behaviour bugs which are often extremely hard to find. + ## Always Use Namespaces