Подскажите, пожалуйста, про шаблоны на С++ и классы как типы?
Прочитал книгу Страутрупа "Язык программирования С++" (издание 2004 года) с целью попробовать осознать этот язык. В результате понял большинство вещей (по крайней мере, я надеюсь на это =), но не понял следующие принципиальные вещи:
- шаблоны (что это такое, по человечески и с чем это едят);
- классы как переменные нового типа (например, непонятна строка "String<T> str1"; непонятно, почему при определении функции, тип одного из параметров функции может определять классом - это что, значит что передаётся класс?).Был бы очень благодарен, если кто смог бы либо ткнуть носом в доку, где это разжёвывается на пальцах (для тех, кто более-менее разбирается в Си и PHP 4/5) или объяснил здесь...
Заранее спасибо,
/Александр.
>Подскажите, пожалуйста, про шаблоны на С++ и классы как типы?
>Прочитал книгу Страутрупа "Язык программирования С++" (издание 2004 года) с целью попробовать
>осознать этот язык. В результате понял большинство вещей (по крайней мере,
>я надеюсь на это =), но не понял следующие принципиальные вещи:
>
>- шаблоны (что это такое, по человечески и с чем это едят);
>
>- классы как переменные нового типа (например, непонятна строка "String<T> str1"; непонятно, почему при определении функции, тип одного из параметров функции может определять классом - это что, значит что передаётся класс?).
>
>Был бы очень благодарен, если кто смог бы либо ткнуть носом в
>доку, где это разжёвывается на пальцах (для тех, кто более-менее разбирается
>в Си и PHP 4/5) или объяснил здесь...
>
>Заранее спасибо,
>/Александр.imho у вас есть только один разумный выход - прочитать Страцструпа еще один или два раза. вразумительный отчет на вопрос "дык что же все-таки такое шаблон?" займет слишком много и сил и времени.
ps: btw это вполне обычное дело. сам три или четыре раза читал :)
// wbr
>imho у вас есть только один разумный выход - прочитать Страцструпа еще
>один или два раза. вразумительный отчет на вопрос "дык что же
>все-таки такое шаблон?" займет слишком много и сил и времени.Читал... Не помогает... =/
Может что другое для прочтения можно посоветовать?>ps: btw это вполне обычное дело. сам три или четыре раза читал
>:)У меня так было с Си - осознать язык вроде как до конца смог только после 4-ой книги ("Практика программирования" Кернигана и Пайка) - но Керниган, Пайк и Ритчи пишут, по-моему, гораздо более понятно....
Судя по всему легко мне не отделаться... Потому просто купил книгу Шилдта (нравится его справочник по Си) по С++, и пошёл на второй заход... =)Спасибо!
Тихо сам с собой... =)
Всем кто собирается изучать С++ и ищет книгу - весьма советую "Самоучитель С++" Г. Шилдт - всё объясняется лего и просто!
>Тихо сам с собой... =)
>Всем кто собирается изучать С++ и ищет книгу - весьма советую "Самоучитель
>С++" Г. Шилдт - всё объясняется лего и просто!Ибо творение Страуструпа можно нормально осознать только когда
сам язык уже назубок знаешь. Написано оно было, скорее, для того,
чтобы показать глубинные возможности языка. Хотя по форме
получился учебник, что многих сбивает с толку.
>Ибо творение Страуструпа можно нормально осознать только когда
>сам язык уже назубок знаешь. Написано оно было, скорее, для того,
>чтобы показать глубинные возможности языка. Хотя по форме
>получился учебник, что многих сбивает с толку.Согласен - начинать надо не со Страуструпа...
Купил в Царицино книгу Бьярна Страуструпа "Язык программирования C++" (специальное издание 2004г.) Книга произвела очень хорошее впечатление (лучше, чем скупой help). О шаблонах в ней очень хорошо рассказано (даже я понял, не всё, но я работаю в этом направлении). Есть ещё замечательная книга Александреску "Современное программирование на С++" скачал из сети в PDF. Вот в этой книге, кажется, о шаблонах есть всё и даже больше. Её мне пока сложно освоить, но она действительно великолепна. Рекомендую!
>Купил в Царицино книгу Бьярна Страуструпа "Язык программирования C++" (специальное издание 2004г.)
>Книга произвела очень хорошее впечатление (лучше, чем скупой help). О шаблонах
>в ней очень хорошо рассказано (даже я понял, не всё, но
>я работаю в этом направлении). Есть ещё замечательная книга Александреску "Современное
>программирование на С++" скачал из сети в PDF. Вот в этой
>книге, кажется, о шаблонах есть всё и даже больше. Её мне
>пока сложно освоить, но она действительно великолепна. Рекомендую!На вкус и цвет... =)
У Страуструпа - отличная книга, но для меня, написанна не очень понятна (в некоторых областях)...