Такая практика вообще нормальна, что в методах имена аргументов и имена полей класса совпадают? Потому что, судя по всему, компиляторы отлично умеют их отличать. К тому же, и имена типов позволено дублировать для переменных. Просто, если честно, меня коробят эти префиксы в виде m_ или суффиксы в виде _.
Не нормальна.
Нехорошо давать те имена, которые уже присутствуют в области видимости, даже если "это компилируется".
Не стоит забывать, что психованный маньяк, который будет читать твой код, знает где ты живёшь.