Что означает ключевое слово explicit
в C ++?
У меня есть класс с private char str[256];
и для него у меня есть явный конструктор:
explicit myClass(const char *func)
{
strcpy(str,func);
}
Я называю это как:
myClass obj("example");
Когда я компилирую это, я получаю следующее предупреждение:
...устарело преобразование из
Недавно я заметил класс в C ++ 0x, который вызывает явный конструктор по умолчанию. Однако мне не удается придумать сценарий, в котором конструктор по умолчанию можно вызывать неявно. Похоже, довольно бессмысленный спецификатор. Я подумал, что, возможно, это откажется от Class