LINUX.ORG.RU

[C++] operator const char* ()

 


0

1

Добрый вечер, почему std::string и QString не используется operator const char* () в дополнение к методу c_str()? Или есть какие-то нюансы из-за которых стоит отказаться от его использования?

★★★

Потому что это ослабляет типизацию и приводят к тому, что компилятор не всегда знает, какое неявное преобразование применить.

anonymous
()

Страуструп предупреждает, что злоупотреблять операторами преобразования не стоит... Короче читайте Страуструпа молодой человек там все написано!

anonymous
()

> Или есть какие-то нюансы из-за которых стоит отказаться от его использования?

нюанс возникнет тогда, когда вам в глаза посмотрит человек, которому придется когда-нибудь этот код читать

Corey
()
Ответ на: комментарий от yoghurt

Чем яснее и явнее код, тем лучше.


золотые слова.
2ts: читайте Сатера или Майерса

kitov ★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.