Это хорошо известное раздражение в C ++.
Ваш строковый литерал имеет тип chat const [].У вас есть два конструктора, последовательности преобразования из char const [] в Test выглядят так:
1) char const [] -> char const * -> bool
2) char const[] -> char const * -> std :: string
1) - это встроенное стандартное преобразование, тогда как 2) - преобразование, определяемое пользователем.Встроенные преобразования имеют приоритет над пользовательскими преобразованиями, поэтому ваш строковый литерал конвертируется в bool легче, чем в std :: string.