URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID9
Нить номер: 3613
[ Назад ]

Исходное сообщение
"C++ lame question (templates, class as type)"

Отправлено Александр , 18-Ноя-04 14:41 
Подскажите, пожалуйста, про шаблоны на С++ и классы как типы?
Прочитал книгу Страутрупа "Язык программирования С++" (издание 2004 года) с целью попробовать осознать этот язык. В результате понял большинство вещей (по крайней мере, я надеюсь на это =), но не понял следующие принципиальные вещи:
- шаблоны (что это такое, по человечески и с чем это едят);
- классы как переменные нового типа (например, непонятна строка "String<T> str1"; непонятно, почему при определении функции, тип одного из параметров функции может определять классом - это что, значит что передаётся класс?).

Был бы очень благодарен, если кто смог бы либо ткнуть носом в доку, где это разжёвывается на пальцах (для тех, кто более-менее разбирается в Си и PHP 4/5) или объяснил здесь...

Заранее спасибо,
/Александр.


Содержание

Сообщения в этом обсуждении
"C++ lame question (templates, class as type)"
Отправлено klalafuda , 18-Ноя-04 14:47 
>Подскажите, пожалуйста, про шаблоны на С++ и классы как типы?
>Прочитал книгу Страутрупа "Язык программирования С++" (издание 2004 года) с целью попробовать
>осознать этот язык. В результате понял большинство вещей (по крайней мере,
>я надеюсь на это =), но не понял следующие принципиальные вещи:
>
>- шаблоны (что это такое, по человечески и с чем это едят);
>
>- классы как переменные нового типа (например, непонятна строка "String<T> str1"; непонятно, почему при определении функции, тип одного из параметров функции может определять классом - это что, значит что передаётся класс?).
>
>Был бы очень благодарен, если кто смог бы либо ткнуть носом в
>доку, где это разжёвывается на пальцах (для тех, кто более-менее разбирается
>в Си и PHP 4/5) или объяснил здесь...
>
>Заранее спасибо,
>/Александр.

imho у вас есть только один разумный выход - прочитать Страцструпа еще один или два раза. вразумительный отчет на вопрос "дык что же все-таки такое шаблон?" займет слишком много и сил и времени.

ps: btw это вполне обычное дело. сам три или четыре раза читал :)

// wbr


"C++ lame question (templates, class as type)"
Отправлено Александр , 18-Ноя-04 15:25 
>imho у вас есть только один разумный выход - прочитать Страцструпа еще
>один или два раза. вразумительный отчет на вопрос "дык что же
>все-таки такое шаблон?" займет слишком много и сил и времени.

Читал... Не помогает... =/
Может что другое для прочтения можно посоветовать?

>ps: btw это вполне обычное дело. сам три или четыре раза читал
>:)

У меня так было с Си - осознать язык вроде как до конца смог только после 4-ой книги ("Практика программирования" Кернигана и Пайка) - но Керниган, Пайк и Ритчи пишут, по-моему, гораздо более понятно....


"C++ lame question (templates, class as type)"
Отправлено Александр , 19-Ноя-04 16:13 
Судя по всему легко мне не отделаться... Потому просто купил книгу Шилдта (нравится его справочник по Си) по С++, и пошёл на второй заход... =)

Спасибо!


"C++ lame question (templates, class as type)"
Отправлено Александр , 22-Ноя-04 17:33 
Тихо сам с собой... =)
Всем кто собирается изучать С++ и ищет книгу - весьма советую "Самоучитель С++" Г. Шилдт - всё объясняется лего и просто!


"C++ lame question (templates, class as type)"
Отправлено DeadMustdie , 23-Ноя-04 19:49 
>Тихо сам с собой... =)
>Всем кто собирается изучать С++ и ищет книгу - весьма советую "Самоучитель
>С++" Г. Шилдт - всё объясняется лего и просто!

Ибо творение Страуструпа можно нормально осознать только когда
сам язык уже назубок знаешь. Написано оно было, скорее, для того,
чтобы показать глубинные возможности языка. Хотя по форме
получился учебник, что многих сбивает с толку.


"C++ lame question (templates, class as type)"
Отправлено Александр , 23-Ноя-04 21:02 
>Ибо творение Страуструпа можно нормально осознать только когда
>сам язык уже назубок знаешь. Написано оно было, скорее, для того,
>чтобы показать глубинные возможности языка. Хотя по форме
>получился учебник, что многих сбивает с толку.

Согласен - начинать надо не со Страуструпа...


"C++ lame question (templates, class as type)"
Отправлено prot , 29-Ноя-04 16:36 
Купил в Царицино книгу Бьярна Страуструпа "Язык программирования C++" (специальное издание 2004г.) Книга произвела очень хорошее впечатление (лучше, чем скупой help). О шаблонах в ней очень хорошо рассказано (даже я понял, не всё, но я работаю в этом направлении). Есть ещё замечательная книга Александреску "Современное программирование на С++" скачал из сети в PDF. Вот в этой книге, кажется, о шаблонах есть всё и даже больше. Её мне пока сложно освоить, но она действительно великолепна. Рекомендую!

"C++ lame question (templates, class as type)"
Отправлено Александр , 29-Ноя-04 20:49 
>Купил в Царицино книгу Бьярна Страуструпа "Язык программирования C++" (специальное издание 2004г.)
>Книга произвела очень хорошее впечатление (лучше, чем скупой help). О шаблонах
>в ней очень хорошо рассказано (даже я понял, не всё, но
>я работаю в этом направлении). Есть ещё замечательная книга Александреску "Современное
>программирование на С++" скачал из сети в PDF. Вот в этой
>книге, кажется, о шаблонах есть всё и даже больше. Её мне
>пока сложно освоить, но она действительно великолепна. Рекомендую!

На вкус и цвет... =)
У Страуструпа - отличная книга, но для меня, написанна не очень понятна (в некоторых областях)...