From 0fee2b4180815628bd9be03bbb0217e3f8515b57 Mon Sep 17 00:00:00 2001 From: practicalswift Date: Tue, 27 Mar 2018 17:00:03 +0200 Subject: doc: Add note about our preference for scoped enumerations ("enum class") --- doc/developer-notes.md | 1 + 1 file changed, 1 insertion(+) diff --git a/doc/developer-notes.md b/doc/developer-notes.md index 8f06ee4eca..a152f86e17 100644 --- a/doc/developer-notes.md +++ b/doc/developer-notes.md @@ -39,6 +39,7 @@ code. - `++i` is preferred over `i++`. - `nullptr` is preferred over `NULL` or `(void*)0`. - `static_assert` is preferred over `assert` where possible. Generally; compile-time checking is preferred over run-time checking. + - `enum class` is preferred over `enum` where possible. Scoped enumerations avoid two potential pitfalls/problems with traditional C++ enumerations: implicit conversions to int, and name clashes due to enumerators being exported to the surrounding scope. Block style example: ```c++ -- cgit v1.2.3