.. title:: clang-tidy - modernize-use-default-member-init modernize-use-default-member-init ================================= This check converts a default constructor's member initializers into the new default member initializers in C++11. Other member initializers that match the default member initializer are removed. This can reduce repeated code or allow use of '= default'. .. code-block:: c++ struct A { A() : i(5), j(10.0) {} A(int i) : i(i), j(10.0) {} int i; double j; }; // becomes struct A { A() {} A(int i) : i(i) {} int i{5}; double j{10.0}; }; .. note:: Only converts member initializers for built-in types, enums, and pointers. The `readability-redundant-member-init` check will remove redundant member initializers for classes. Options ------- .. option:: UseAssignment If this option is set to `true` (default is `false`), the check will initialise members with an assignment. For example: .. code-block:: c++ struct A { A() {} A(int i) : i(i) {} int i = 5; double j = 10.0; }; .. option:: IgnoreMacros If this option is set to `true` (default is `true`), the check will not warn about members declared inside macros.