forked from OSchip/llvm-project
55 lines
1.2 KiB
ReStructuredText
55 lines
1.2 KiB
ReStructuredText
.. 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 non-zero (default is `0`), 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 non-zero (default is `1`), the check will not warn
|
|
about members declared inside macros.
|