Может Бьярне ошибиться? (пока объясняю шаблоны) или я до сих пор не понимаю? - PullRequest
5 голосов
/ 22 июля 2010

Ребята, я делаю упражнения из "Языка программирования C ++, 3-е изд." и на странице 340 есть пример функции:

template <class T, class C = Cmp<T> > // Here is a default argument
// But as far as I'm concerned it's illegal to have a default argument in
// a function template
        int compare (const String<T>& str1, const String<T>& str2)
        {
        /*Some code*/
        }

Итак, мой вопрос:
В книге есть ошибка или я ошибаюсь?

1 Ответ

9 голосов
/ 22 июля 2010

Да, в этом случае книга не права.Использовать аргументы шаблона по умолчанию в объявлениях шаблона функции действительно недопустимо.

Ссылку на эту проблему можно найти здесь http://www2.research.att.com/~bs/3rd_issues.html

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...