ICU-21050 add detail for when need to ifndef C++ boilerplate
diff --git a/docs/userguide/dev/codingguidelines.md b/docs/userguide/dev/codingguidelines.md
index a411898..9cd7884 100644
--- a/docs/userguide/dev/codingguidelines.md
+++ b/docs/userguide/dev/codingguidelines.md
@@ -295,8 +295,12 @@
struct/class fields, virtual methods)
* enum constants where that would modify the numeric values of following
constants
-* C++ class boilerplate (e.g., default/copy constructors) because otherwise
- the compiler would create public ones
+ * actually, best to use `#ifndef` together with explicitly defining the
+ numeric value of the next constant
+* C++ class boilerplate (e.g., default/copy constructors), if
+ the compiler would auto-create public functions to replace `#ifndef`’ed ones
+ * For example, the compiler automatically creates a default constructor if
+ the class does not specify any other constructors.
* private class members
* definitions in internal/test/tools header files (that would be pointless;
they should probably not have API tags in the first place)