diff options
-rw-r--r-- | styleguide/c++/c++11.html | 12 | ||||
-rw-r--r-- | ui/base/layout.h | 2 | ||||
-rw-r--r-- | ui/base/resource/data_pack.h | 2 |
3 files changed, 9 insertions, 7 deletions
diff --git a/styleguide/c++/c++11.html b/styleguide/c++/c++11.html index b62f3c0..c0274d9 100644 --- a/styleguide/c++/c++11.html +++ b/styleguide/c++/c++11.html @@ -94,12 +94,14 @@ decltype specifier</a></td> </tr> <tr> -<td>Enumerated Type Classes</td> -<td><code>enum class <i>classname</i></code></td> +<td>Enumerated Type Classes and Enum Bases</td> +<td><code>enum class <i>classname</i></code><br> + <code>enum class <i>classname</i> : <i>base-type</i></code><br> + <code>enum <i>enumname</i> : <i>base-type</i></code></td> <td>Provide enums as full classes, with no implicit -conversion to booleans or integers</td> -<td><a href="http://stackoverflow.com/questions/6936030/do-we-really-need-enum-class-in-c11"> -enum-class</a></td> +conversion to booleans or integers. Provide an explicit underlying type for +enum classes and regular enums.</td> +<td><a href="http://www.stroustrup.com/C++11FAQ.html#enum">enum-class</a></td> <td>Enum classes are still enums and follow enum naming rules (which means SHOUTY_CASE in the <a href="http://www.chromium.org/developers/coding-style#Naming">current style guide</a>). <a href="https://groups.google.com/a/chromium.org/forum/#!topic/chromium-dev/Q5WmkAImanc">Discussion thread</a></td> diff --git a/ui/base/layout.h b/ui/base/layout.h index eaaa926..ab83878 100644 --- a/ui/base/layout.h +++ b/ui/base/layout.h @@ -18,7 +18,7 @@ namespace ui { // SCALE_FACTOR_NONE is used for density independent resources such as // string, html/js files or an image that can be used for any scale factors // (such as wallpapers). -enum ScaleFactor { +enum ScaleFactor : int { SCALE_FACTOR_NONE = 0, SCALE_FACTOR_100P, SCALE_FACTOR_125P, diff --git a/ui/base/resource/data_pack.h b/ui/base/resource/data_pack.h index 928c855..b7d833c 100644 --- a/ui/base/resource/data_pack.h +++ b/ui/base/resource/data_pack.h @@ -16,7 +16,6 @@ #include "base/files/memory_mapped_file.h" #include "base/memory/scoped_ptr.h" #include "base/strings/string_piece.h" -#include "ui/base/layout.h" #include "ui/base/resource/resource_handle.h" #include "ui/base/ui_base_export.h" @@ -26,6 +25,7 @@ class RefCountedStaticMemory; } namespace ui { +enum ScaleFactor : int; class UI_BASE_EXPORT DataPack : public ResourceHandle { public: |