C++ でコンストラクタの引数名をメンバ変数名と同じにする

コンストラクタで引数を受け取ってメンバ変数を初期化する場合、

struct X{
    X(int _value) : value(_value){}
    int value;
};

みたいに引数名に _ prefix/suffix をつけているコードをたまに見かけます。
しかし、実は引数名はメンバ変数名と同じでも問題なく動作します。

struct X{
    X(int value) : value(value){}
    int value;
};

X x{42};
std::cout << x.value << std::endl;

これは C++ の規格で保証されている挙動になります。
もし毎回 _ を付けるのが手間であれば _ を省いてしまっても問題ありません。

見解です。